1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| class Solution { public: int fib(int n) { if(n < 2) return n; int memo[2]; memo[0] = 0; memo[1] = 1; for(int i = 2; i <= n; ++i) { auto tmp = memo[0]; memo[0] += memo[1]; memo[0] %= 1000000007; swap(memo[0], memo[1]); } return memo[1]; } };
|