세그먼트 번호 또는 소수 측정 순서 ( OEIS A002048 )는 각 멤버가 이전의 연속 숫자의 합으로 만들 수없는 가장 작은 양수 (0보다 큰) 숫자가되도록 숫자의 순서입니다 a(0) = 1
.
예
계산하려면 a(7)
먼저 계산 a(0->6) = [1, 2, 4, 5, 8, 10, 14]
합니다. 그런 다음 0에서 시작하여 시퀀스에서 하나 이상의 연속 숫자의 합이 아닌 숫자를 찾을 때까지 숫자를 살펴 봅니다.
1 = 1
2 = 2
3 = 1 + 2
4 = 4
5 = 5
6 = 2 + 4
7 = 1 + 2 + 4
8 = 8
9 = 4 + 5
10 = 10
11 = 2 + 4 + 5
12 = 1 + 2 + 4 + 5
13 = 5 + 8
14 = 14
15 = ????
연속적인 서브 시퀀스를 합하여 15 개를 만들 수 없으며, 더 작은 숫자는 15 개가 시퀀스의 다음 숫자 일 수 있습니다. a(7) = 15
직무
당신의 임무는 숫자를 취하고 (표준 방법을 통해)이 순서에서 n 번째 항을 표준 출력 방법을 통해 출력하는 것입니다. 이것은 코드 골프이며 당신은 그렇게 점수가 매겨 질 것입니다.
테스트 사례
0 -> 1
1 -> 2
2 -> 4
3 -> 5
4 -> 8
5 -> 10
6 -> 14
7 -> 15
8 -> 16
9 -> 21
()
로하고 그것을 올바른 기능으로 만들기 위해 마지막 줄을 둘러싸고 있다고 생각합니다 . 적용되는 부분!!
은 운영자 섹션이며 기능을 수행하려면 동봉되어야합니다()
. 그것이 없으면 누락 된 인수가있는 함수 (또는 엄격한 Haskell 용어를 사용하는 "값") 만되는 스 니펫 일뿐입니다.