zoukankan      html  css  js  c++  java
  • Project Euler Problem 2: Even Fibonacci numbers

    Even Fibonacci numbers

    Problem 2

    Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting with 1 and 2, the first 10 terms will be:

    1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...

    By considering the terms in the Fibonacci sequence whose values do not exceed four million, find the sum of the even-valued terms.


    C++:

    #include <iostream>
    
    using namespace std;
    
    const long N = 4000000;
    
    int main()
    {
        long f1 = 1, f2 = 2, f3;
        long ans = f2;
    
        for(;;) {
            f3 = f1 + f2;
            if(f3 > N)
                break;
    
            if(f3 % 2 == 0) {
                ans += f3;
            }
    
            f1 = f2;
            f2 = f3;
        }
    
        cout << ans << endl;
    
        return 0;
    }



    Python:

    ls=[1,1]
    ans=0
    while ls[-1] <4000000:
    	ls.append(ls[-1]+ls[-2])
    	if (ls[-1]&1) == 0:
    		ans+=ls[-1]
    
    print(ans)


    Run results:
    4613732


  • 相关阅读:
    班课2
    班课2
    班课1
    lecture 2
    lecture 1
    使用node的fs读取文件
    使用Node.js搭建一个本地服务器
    Node.js前言
    简述ES6其他的东西
    ES6异步操作Thunk、co和async
  • 原文地址:https://www.cnblogs.com/tigerisland/p/7564047.html
Copyright © 2011-2022 走看看