Seidel Triangle은 Pascal의 Triangle과 유사한 수학적 구조이며 Bernoulli 수와 관련이있는 것으로 알려져 있습니다.
처음 몇 행은 다음과 같습니다.
1
1 1
2 2 1
2 4 5 5
16 16 14 10 5
16 32 46 56 61 61
각 행은 다음과 같이 생성됩니다.
행 번호가 짝수 (1 색인) 인 경우 :
이전 행의 첫 번째 항목을 내립니다.
다음 모든 항목은 이전 항목과 그 위에있는 항목의 합계입니다.
마지막 항목 복제
행 번호가 홀수 인 경우 :
이전 행의 마지막 항목을 내립니다.
뒤로 가면 각 항목은 이전 항목과 그 위에있는 항목의 합계입니다.
이제 첫 번째 항목이 무엇인지 복제하십시오.
기본적으로 지그재그 패턴으로 삼각형을 구성합니다.
1
v
1 > 1
v
2 < 2 < 1
v
2 > 4 > 5 > 5
자세한 내용 은 Bernoulli 번호 의 Wikipedia 페이지 를 참조하십시오 .
도전 과제 :
n
함수 인수로 또는 STDIN에서 주어진 경우 , n
Seidel 삼각형 의 세 번째 행 또는 첫 번째 행을 인쇄하거나 리턴 하십시오.n
행. 0 또는 1 인덱싱을 사용할 수 있습니다.
음수 또는 정수가 아닌 입력을 처리 할 필요가 없습니다 (1 인덱싱 된 경우 0). 보다 큰 출력을 처리 할 필요가 없습니다.2147483647 = 2^31 - 1
이것이 코드 골프이므로 가능한 한 적은 바이 트로이 작업을 수행하십시오.
예 :
이 예제에서 리턴 값은 n
0 색인 된 세 번째 행입니다.
Input -> Output
0 1
1 1 1
2 2 2 1
6 272 272 256 224 178 122 61
13 22368256 44736512 66750976 88057856 108311296 127181312 144361456 159575936 172585936 183194912 191252686 196658216 199360981 199360981