Pagini recente » Istoria paginii utilizator/mihaiteisanu03 | Istoria paginii utilizator/vivok | Cod sursa (job #432864) | Cod sursa (job #1610614) | Cod sursa (job #2023772)
#include <cstdio>
#define MAXCIF 209
char dp[2][MAXCIF];
int main(){
FILE*fi,*fout;
short n,i;
unsigned char j;
char t;
fi=fopen("nunta.in" ,"r");
fout=fopen("nunta.out" ,"w");
fscanf(fi,"%hd" ,&n);
if(n==1)
fprintf(fout,"1");
if(n==2)
fprintf(fout,"2");
if(n>2){
dp[1][0]=1;
dp[0][0]=2;
for(i=3;i<=n;i++){
t=0;
for(j=0;j<MAXCIF;j++){
t=t+dp[i&1][j]+dp[1-i&1][j];
dp[i&1][j]=t%10;
t/=10;
}
}
i=MAXCIF-1;
while(dp[n&1][i]==0)
i--;
fputc(dp[n&1][i]+'0',fout);
i--;
while(i>=0){
fputc(dp[n&1][i]+'0',fout);
i--;
}
}
fclose(fi);
fclose(fout);
return 0;
}