คุณคงรู้จักลำดับฟีโบนาชี:
fibonacci(n)=fibonacci(n-1)+fibonacci(n-2)
fibonacci(0)=0
fibonacci(1)=1
งานของคุณง่ายอย่างที่ควรจะเป็น:
- รับ
N
คำนวณจำนวนเต็มfibonacci(n)
แต่นี่คือการบิด:
- ยังลบ
N
รอ. อะไร?
fibonacci(1)=fibonacci(0)+fibonacci(-1)
ดังนั้น
fibonacci(-1)=1
และ
fibonacci(-2)=fibonacci(0)-fibonacci(1)=-1
และอื่น ๆ ...
- นี่คือรหัสกอล์ฟที่สั้นที่สุดดังนั้นโปรแกรมเป็นไบต์ชนะ
- คุณสามารถส่งฟังก์ชั่นหรือโปรแกรมเต็มรูปแบบ
- N อยู่ใน [-100,100]
Testcase ในรูปแบบ CSV:
-9;-8;-7;-6;-5;-4;-3;-2;-1;0;1;2;3;4;5;6;7;8
34;-21;13;-8;5;-3;2;-1;1;0;1;1;2;3;5;8;13;21
คำแนะนำ:
n <0 และ n & 1 == 0:
fibonacci(n)=fibonacci(abs(n))*-1