Muhtemelen hepiniz fibonacci dizisini biliyorsunuzdur:
fibonacci(n)=fibonacci(n-1)+fibonacci(n-2)
fibonacci(0)=0
fibonacci(1)=1
Göreviniz olabileceği kadar basit:
- Verilen tamsayı
N
hesaplamasıfibonacci(n)
ama işte twist:
- Ayrıca negatif yapmak
N
Bekleyin. Ne?
fibonacci(1)=fibonacci(0)+fibonacci(-1)
yani
fibonacci(-1)=1
ve
fibonacci(-2)=fibonacci(0)-fibonacci(1)=-1
ve bunun gibi...
- Bu bir kod golfüdür ve baytlarda kazanılan en kısa programdır.
- Bir işlev veya tam bir program gönderebilirsiniz
- N, [-100,100]
CSV'de Test Çantaları:
-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
İpucu:
n <0 ve n & 1 == 0:
fibonacci(n)=fibonacci(abs(n))*-1