Cod sursa(job #1728617)
Utilizator | Data | 13 iulie 2016 13:25:45 | |
---|---|---|---|
Problema | Al k-lea termen Fibonacci | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.42 kb |
#include <fstream>
#define mod 666013
#define BIG 2000001
using namespace std;
int a[BIG];
int main() {
int k,n,i=2;
a[1]=a[2] = 1;
ifstream fin("kfib.in");
ofstream fout("kfib.out");
fin>>k;
fin.close();
if(k<30)
fout<<k;
else{
while(!(a[i]==1&&!a[i-1]))i++,a[i] = (a[i-1] + a[i-2]) % mod;
n=i-1;
fout<<a[k%n];
}
fout.close();
return 0;
}