Pagini recente » Cod sursa (job #289440) | Cod sursa (job #2263668) | Cod sursa (job #2201085) | Cod sursa (job #764460) | Cod sursa (job #247718)
Cod sursa(job #247718)
#include<stdio.h>
FILE *fin=fopen("nunta.in","r"),
*fout=fopen("nunta.out","w");
int N;
struct {int c[500];}A,B,C;
void add(){
int i,t=0;
for(i=1;i<=A.c[0] || i<=B.c[0] || t;i++,t/=10)
A.c[i]=(t+=A.c[i]+B.c[i])%10;
A.c[0]=i-1;
}
int main(){
fscanf(fin,"%d",&N);
A.c[0]=A.c[1]=1;
B.c[0]=1;B.c[1]=2;
if(N==1)
fprintf(fout,"1\n");
else
if(N==2)
fprintf(fout,"2\n");
else{
for(int i=3;i<=N;i++){
add();
C=B;B=A;A=C;
}
for(int i=B.c[0];i;i--)
fprintf(fout,"%d",B.c[i]);
fprintf(fout,"\n");
}
fclose(fin);
fclose(fout);
return 0;
}