Cod sursa(job #598701)

Utilizator dspMihaiDespotovici Mihai dspMihai Data 26 iunie 2011 18:53:48
Problema Al k-lea termen Fibonacci Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <stdio.h>
long k;
/*
long fib_k (long x)
{
	if (x==1) return 1;
	else if (x==0) return 0;
	else return (fib_k(x-1)+fib_k(x-2))%666013;
}*/

long fib_k (long x)
{
	long crt,x1=0,x2=1,i;
	if (x==0) return 0;
	else if (x==1) return 1;
	else 
	{
		for (i=2; i<=x; i++)
		{
			crt=(x1+x2)%666013;
			x1=x2;
			x2=crt;
		}
		return crt;
	}
}

int main () 
{
	FILE *f,*g;
	f=fopen("kfib.in", "r");
	g=fopen("kfib.out", "w");
	fscanf(f, "%d", &k);
	fprintf(g, "%d", fib_k(k));
	fclose(f); fclose(g);
	return 0;
}