Cod sursa(job #387543)

Utilizator tranbachhaiTran Bach Hai tranbachhai Data 27 ianuarie 2010 21:24:09
Problema Al k-lea termen Fibonacci Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include<stdio.h>
#include<vector>
using namespace std;
long n,nr=1,temp;
vector <long> v;
int main()
{
    freopen("kfib.in","r",stdin);
    freopen("kfib.out","w",stdout);
    v.push_back(0);
    v.push_back(1);
    //while(!((v[nr]+v[nr-1])%666013==1 && !v[nr]))
    //    v.push_back((v[++nr-1]+v[nr-2])%666013);
	do
	{
		temp=v[nr]+v[nr-1];
		if (temp>=666013)
			temp-=666013;
		++nr;
		v.push_back(temp);
	}
	while(!(temp==1 && !v[nr-1]));
	scanf("%ld",&n);
	printf("%ld",v[(long)n%(nr-1)]);
    return 0;
}