เราทุกคนคุ้นเคยกับการที่มีชื่อเสียงลำดับฟีโบนักชีที่เริ่มต้นด้วย0
และ1
และแต่ละองค์ประกอบคือผลรวมของก่อนหน้านี้สองที่ ต่อไปนี้เป็นคำศัพท์สองสามคำแรก (OEIS A000045 ):
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584
รับจำนวนเต็มบวกคืนจำนวนใกล้เคียงที่สุดของลำดับ Fibonacci ภายใต้กฎเหล่านี้:
จำนวนฟีโบนักชีที่อยู่ใกล้จะถูกกำหนดเป็นจำนวนฟีโบนักชีมีความแตกต่างแน่นอนที่เล็กที่สุดที่มีจำนวนเต็มกำหนด ยกตัวอย่างเช่น
34
เป็นจำนวนฟีโบนักชีที่อยู่ใกล้30
เพราะ|34 - 30| = 4
ซึ่งมีขนาดเล็กกว่าที่ใกล้เคียงที่สุดที่สองซึ่ง21
|21 - 30| = 9
หากจำนวนเต็มที่กำหนดเป็นของลำดับ Fibonacci จำนวน Fibonacci ที่ใกล้เคียงที่สุดคือตัวของมันเอง ยกตัวอย่างเช่นจำนวนฟีโบนักชีที่อยู่ใกล้ตรง
13
13
ในกรณีที่มีการผูกคุณอาจเลือกที่จะส่งออกหนึ่งในหมายเลขฟีโบนักชีที่อยู่ใกล้กับอินพุทหรือเอาท์พุทพวกเขาทั้งสอง ตัวอย่างเช่นถ้าใส่เป็น
17
ทั้งหมดต่อไปนี้จะถูกต้อง:21
, หรือ13
21, 13
ในกรณีที่คุณส่งคืนทั้งสองโปรดระบุรูปแบบ
มีการใช้ช่องโหว่เริ่มต้น คุณสามารถใช้การป้อนข้อมูลและจัดให้มีการส่งออกผ่านวิธีการมาตรฐานใด ๆ โปรแกรมของคุณ / ฟังก์ชั่นจะต้องจัดการกับค่าถึง 10 8
กรณีทดสอบ
อินพุต -> เอาท์พุท 1 -> 1 3 -> 3 4 -> 3 หรือ 5 หรือ 3, 5 6 -> 5 7 -> 8 11 -> 13 17 -> 13 หรือ 21 หรือ 13, 21 63 -> 55 101 -> 89 377 -> 377 467 -> 377 500 -> 610 1399 -> 1597
เกณฑ์การให้คะแนน
นี่คือโค้ดกอล์ฟดังนั้นโค้ดที่สั้นที่สุดเป็นไบต์ในทุกภาษาชนะ!
n
n ≥ 1
หมายถึง