배경
할로윈 관련 도전이 있습니다.
마지막 도전 에서 보았 듯이 아스키 아트 애니메이션이라고하는 것을 아주 좋아합니다. 패턴을 그리는 것이 아니라 진행되는 패턴을 그리는 것입니다. 이 아이디어는 몇 년 전에 무작위 아스키 박쥐가 할로윈 화면을 가로 질러 날아가도록 프레젠테이션을 활기차게 요청한 후에 나에게 왔습니다. 말할 필요도없이 나는 (나는 돈을 받고 있었다) 무작위 박쥐보다 생명이 더 많다고 생각하게했다. 이것으로부터 영감을 얻어이 도전을 제안하고 싶습니다.
도전
박쥐가 달 주위를 날아 다니게합니다.
박쥐는 다음과 같습니다.
^o^
여기 달이 있습니다 :
mmm
mmmmmmm
mmmmmmmmm
mmmmmmm
mmm
박쥐 비행의 모든 단계를 보여 주어야합니다 (출력 참조).
입력
없음
산출
^o^
mmm
mmmmmmm
mmmmmmmmm
mmmmmmm
mmm
mmm^o^
mmmmmmm
mmmmmmmmm
mmmmmmm
mmm
mmm
mmmmmmm^o^
mmmmmmmmm
mmmmmmm
mmm
mmm
mmmmmmm
mmmmmmmmm^o^
mmmmmmm
mmm
mmm
mmmmmmm
mmmmmmmmm
mmmmmmm^o^
mmm
mmm
mmmmmmm
mmmmmmmmm
mmmmmmm
mmm^o^
mmm
mmmmmmm
mmmmmmmmm
mmmmmmm
mmm
^o^
mmm
mmmmmmm
mmmmmmmmm
mmmmmmm
^o^mmm
mmm
mmmmmmm
mmmmmmmmm
^o^mmmmmmm
mmm
mmm
mmmmmmm
^o^mmmmmmmmm
mmmmmmm
mmm
mmm
^o^mmmmmmm
mmmmmmmmm
mmmmmmm
mmm
^o^mmm
mmmmmmm
mmmmmmmmm
mmmmmmm
mmm
^o^
mmm
mmmmmmm
mmmmmmmmm
mmmmmmm
mmm
규칙
- 외부 파일 또는 웹 사이트에서 읽지 않음
- 전체 프로그램 또는 기능을 제출할 수 있습니다
- 여분의 공백 및 / 또는 줄 바꿈은 괜찮습니다.
- 평소처럼 금지 된 표준 허점
- 박쥐는 달의 꼭대기에서 다시 마무리해야합니다
- 원하는 경우 프레임간에 화면을 지우십시오. 그러나 이것이 필수 사항은 아닙니다. 위의 출력은 괜찮습니다
- 이것이 코드 골프이기 때문에 어떤 대답이라도 환영받을지라도 우승자는 가장 낮은 바이트 수의 답이 될 것입니다
견본
완전히 ungolfed Python 2에서 참조 구현 (620 바이트이지만 수행 할 수 있음을 증명하기 위해 나중에 골프를 칠 수 있음).
b='^o^'
m=[' ',
' mmm ',
' mmmmmmm ',
' mmmmmmmmm ',
' mmmmmmm ',
' mmm ',
' ']
p=[(9,12),(12,15),(14,17),(15,18),(14,17),(12,15),(9,12),(6,9),(4,7),(3,6),(4,7),(6,9),(9,12)]
d=0
for z in range(7):
x=map(str,m[z])
c="".join(x[:p[z][0]]) + b + "".join(x[p[z][1]:])+"\n"
print "\n".join(m[:z]) + "\n" + c+"\n".join(m[z+1:])
for z in range(6)[::-1]:
x=map(str,m[z])
c="".join(x[:p[z+6][0]]) + b + "".join(x[p[z+6][1]:])+"\n"
print "\n".join(m[:z]) + "\n" + c+"\n".join(m[z+1:])
결과
@Jonathan은 분명히 Jelly로 바이트 수를 얻었지만 @Oyarsa의 Brainfuck 답변을 순수하게 허용되는 답변으로 표시 할 것입니다. 왜냐하면 미친 언어로 실제로 이런 일을 할 수있는 사람은 +15의 대답이 필요하다고 생각하기 때문입니다. 필요한 바이트 수 골프 언어에 문제가 있기 때문이 아닙니다. 의심 스러우면 메타 에 관한 질문에 대한 내 대답을 참조하십시오 . 어떤 언어로든 기여한 모든 사람에게 많은 감사와 존경을 전합니다.