fib in o(n)