mirror of
https://github.com/Kiritow/OJ-Problems-Source.git
synced 2024-03-22 13:11:29 +08:00
ed2de2e423
1500-1599
30 lines
691 B
C++
30 lines
691 B
C++
#include<iostream>
|
|
#include<cmath>
|
|
#include<cstdio>
|
|
using namespace std;
|
|
const double s = (sqrt(5.0)+1.0)/2;
|
|
int main()
|
|
{
|
|
int n,i;
|
|
double bit;
|
|
int fac[21] = { 0 , 1 };
|
|
for(i = 2; i < 21; i++)
|
|
fac[i] = fac[i-1] + fac [i-2];
|
|
while(cin >> n)
|
|
{
|
|
if(n <= 20) {
|
|
cout << fac[n] << endl;
|
|
continue;
|
|
}
|
|
else{
|
|
bit = -0.5*log(5.0)/log(10.0)+((double)n)*log(s)/log(10.0);
|
|
bit = bit - floor(bit);
|
|
bit = pow(10.0,bit);
|
|
while(bit < 1000)
|
|
bit = 10.0 * bit;
|
|
cout << (int)bit << endl;
|
|
}
|
|
}
|
|
return 0;
|
|
}
|