Pagini recente » Cod sursa (job #1082748) | Cod sursa (job #429425) | Cod sursa (job #2984208) | Cod sursa (job #567446) | Cod sursa (job #2243718)
#include <stdio.h>
#define daniel main
#define doamne_ajuta return
#define patriarhul int
#define MOD 666013
patriarhul sol[2][2]={{1,0},{0,1}}, n;
patriarhul a[2][2]={ {0,1}, {1,1} };
patriarhul miron_cristea(patriarhul a[2][2], patriarhul b[2][2])
{
patriarhul c[2][2]={0}, i, j, k;
for(i=0; i<2; i++)
for(j=0; j<2; j++)
for(k=0; k<2; k++)
c[i][j] = (c[i][j] + (1LL * a[i][k] * b[k][j])%MOD) %MOD;
for(i=0; i<2; i++)
for(j=0; j<2; j++)
a[i][j]=c[i][j];
doamne_ajuta 0;
}
patriarhul nicodim_munteanu(patriarhul n)
{
while(n>0){
if(n&1)
miron_cristea(sol,a);
miron_cristea(a,a);
n>>=1;
}
doamne_ajuta 0;
}
patriarhul daniel()
{
FILE *f1, *f2;
f1=fopen("kfib.in","r");
patriarhul q, i;
fscanf(f1,"%d",&q);
nicodim_munteanu(q-1);
f2=fopen("kfib.out","w");
fprintf(f2,"%d",sol[1][1]);
fclose(f1);
fclose(f2);
doamne_ajuta 0;
}