Anda mungkin semua tahu urutan fibonacci:
fibonacci(n)=fibonacci(n-1)+fibonacci(n-2)
fibonacci(0)=0
fibonacci(1)=1
Tugas Anda sesederhana mungkin:
- Mengingat bilangan bulat
N
menghitungfibonacci(n)
tapi di sini adalah twist:
- Juga lakukan negatif
N
Tunggu. Apa?
fibonacci(1)=fibonacci(0)+fibonacci(-1)
begitu
fibonacci(-1)=1
dan
fibonacci(-2)=fibonacci(0)-fibonacci(1)=-1
dan seterusnya...
- Ini adalah kode-golf sehingga program terpendek dalam byte menang.
- Anda dapat mengirimkan fungsi atau program penuh
- N ada di [-100.100]
Testcase di 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
Petunjuk:
n <0 dan n & 1 == 0:
fibonacci(n)=fibonacci(abs(n))*-1