ความท้าทายในครั้งนี้คือการหาn TH Fibohexaprime คำจำกัดความของFibohexaprimeมีดังต่อไปนี้:
ก่อนอื่นเราสังเกตรายการที่มีหมายเลขฟีโบนักชี:
N | Fibonacci number
1 | 1
2 | 1
3 | 2
4 | 3
5 | 5
6 | 8
7 | 13
8 | 21
9 | 34
10 | 55
11 | 89
12 | 144
13 | 233
14 | 377
15 | 610
16 | 987
17 | 1597
หลังจากนั้นเราแปลงตัวเลขเป็นเลขฐานสิบหก:
N | Fib | Hex
1 | 1 | 1
2 | 1 | 1
3 | 2 | 2
4 | 3 | 3
5 | 5 | 5
6 | 8 | 8
7 | 13 | D
8 | 21 | 15
9 | 34 | 22
10 | 55 | 37
11 | 89 | 59
12 | 144 | 90
13 | 233 | E9
14 | 377 | 179
15 | 610 | 262
16 | 987 | 3DB
17 | 1597 | 63D
จากตัวเลขฐานสิบหกเรากรองตัวอักษร สิ่งที่เราเหลือคือตัวเลข เราต้องตรวจสอบว่าตัวเลขเหล่านี้ดีหรือไม่:
hex | filtered | is prime? | N =
1 > 1 > false
1 > 1 > false
2 > 2 > true 1
3 > 3 > true 2
5 > 5 > true 3
8 > 8 > false
D > 0 > false
15 > 15 > false
22 > 22 > false
37 > 37 > true 4
59 > 59 > true 5
90 > 90 > false
E9 > 9 > false
179 > 179 > true 6
262 > 262 > false
3DB > 3 > true 7
63D > 63 > false
ถ้าจำนวนกรองเป็นนายกเราเรียกสิ่งนี้ว่าFibohexaprime คุณจะเห็นว่าN = 7
จำนวนฟีโบนัชชีที่เกี่ยวข้องคือ 987
ภารกิจนั้นง่ายเมื่อให้อินพุตโดยใช้ STDIN หรือทางเลือกที่ยอมรับได้ให้เขียนโปรแกรมหรือฟังก์ชั่นที่ส่งออก Fibohexaprime ที่ n โดยใช้ STDOUT หรือทางเลือกที่ยอมรับได้
กรณีทดสอบ
Input - Output
1 - 2
2 - 3
3 - 5
4 - 55
5 - 89
6 - 377
7 - 987
8 - 28657
9 - 75025
10 - 121393
11 - 317811
12 - 5702887
13 - 9227465
14 - 39088169
15 - 102334155
16 - 32951280099
17 - 4052739537881
18 - 806515533049393
19 - 7540113804746346429
กฎระเบียบ:
- รับค่าจำนวนเต็มระหว่าง
1
และ19
(ค่าด้านบนมีค่า20
เกินค่าสูงสุดสำหรับจำนวนเต็มแบบ 64 บิต) ส่งออกค่าที่สอดคล้องกัน - คุณสามารถเขียนฟังก์ชั่นหรือโปรแกรม
- นี่คือโค้ดกอล์ฟดังนั้นการส่งที่มีจำนวนไบต์น้อยที่สุดจะชนะ!