Monday, April 4, 2016

Python fibonnaci

# Enter your code here. Read input from STDIN. Print output to STDOUT

a = 1
b = 2
s = 0

t = long(raw_input())

if t <1 or t > 10**5:
    exit(0)
for i in range(0,t):
    n = long(raw_input())
    if n <10 or n > 4*(10**16):
        exit(0)
    s = 2
    a = 1
    b = 2
    f = 0
    while f < n:
        f = a + b
        if f > n:
            break
        if f%2 == 0:
            s = s + f
        a = b
        b = f
    print s

No comments:

Post a Comment