이 도전 의 ASCII 버전입니다 . Martin Poster가 요청 당 초기 게시물을 분리했습니다.
소개
피보나치 수열과 유사하게 파도바 수열 ( OEIS A000931 )은 수열에 이전 항을 추가하여 생성되는 수열입니다. 초기 값은 다음과 같이 정의됩니다.
P(0) = P(1) = P(2) = 1
0, 1, 2 번째 항은 모두 1입니다. 반복 관계는 다음과 같습니다.
P(n) = P(n - 2) + P(n - 3)
따라서 다음과 같은 시퀀스가 생성됩니다.
1, 1, 1, 2, 2, 3, 4, 5, 7, 9, 12, 16, 21, 28, 37, 49, 65, 86, 114, 151, 200, 265, 351, ...
이 숫자를 정삼각형의 측면 길이로 사용하면 피보나치 나선과 같이 모두 함께 배치 할 때 멋진 나선을 얻을 수 있습니다.
Wikipedia의 이미지 제공
태스크
당신의 임무는 ASCII 용어 로이 나선을 재현하는 프로그램을 작성하는 것입니다. 측면 길이 1 (1 문자)의 삼각형을 ASCII로 멋지게 표현할 수 없기 때문에 측면 길이가 2의 배수로 확장되었습니다. 따라서 측면 길이 1의 삼각형은 실제로 다음과 같이 표시됩니다.
/\
/__\
예를 들어, 입력이 5 (5 번째 항) 인 경우 출력은 다음과 같아야합니다.
/\
/ \
/ \
/______\
\ /\
\ /__\
\ /\ /
\/__\/
처음 5 개의 항은 1, 1, 1, 2, 2이므로 삼각형은 팽창으로 인해 측면 길이 2, 2, 2, 4, 4를 가졌습니다. 입력 8의 다른 예 :
__________
/\ /\
/ \ / \
/ \ / \
/______\ / \
\ /\ / \
\ /__\/ \
\ /\ / \
\/__\/______________\
\ /
\ /
\ /
\ /
\ /
\ /
\ /
\ /
\ /
\/
규칙
- 결과를 인쇄해야하며 입력은 용어 번호에 해당하는 정수 여야합니다.
- 후행 및 선행 개행이 허용되며, 라인 이후의 후행 공백도 허용됩니다.
- 귀하의 제출물은 최소한 10 학기 (9)까지 처리 할 수 있어야합니다.
- 제출물은 입력을 받고 결과를 인쇄하는 전체 프로그램 또는 기능이어야합니다
- 출력 회전은 60 도의 배수로 허용되지만 삼각형의 크기는 표현과 함께 동일하게 유지되어야합니다.
- 반 시계 방향으로도 이동 가능
- 표준 허점 은 금지되어 있습니다
입력이> 0이고 올바른 형식의 입력이 있다고 가정 할 수 있습니다.
채점
이것은 code-golf 이므로 바이트 단위의 가장 짧은 코드가 이깁니다. 새해 복 많이 받으세요!