【杭電100題】2070 Fibbonacci Number
阿新 • • 發佈:2018-11-12
Problem Description
Your objective for this question is to develop a program which will generate a fibbonacci number. The fibbonacci function is defined as such:
f(0) = 0
f(1) = 1
f(n) = f(n-1) + f(n-2)
Your program should be able to handle values of n in the range 0 to 50.
Input
Each test case consists of one integer n in a single line where 0≤n≤50. The input is terminated by -1.
Output
Print out the answer in a single line for each test case.
Hint
Note:you can use 64bit integer: __int64
#include <iostream> #include <ctype.h> using namespace std; int n; __int64 last_but_one,last; __int64 cur; int main() { while(cin>>n&&n>=0) { if(n==0) { cout<<'0'<<endl; } else if(n==1) { cout<<'1'<<endl; } else { last_but_one=0; last=1; for(int i=2; i<=n; i++) { cur=last_but_one+last; last_but_one=last; last=cur; } cout<<cur<<endl; } } return 0; }