Pagini recente » Cod sursa (job #79266) | Cod sursa (job #588106) | Cod sursa (job #1651100) | Cod sursa (job #481116) | Cod sursa (job #1410297)
#include <cstdio>
#include <iostream>
#define maxN 105
long n,i,s,d;
unsigned char C[2][maxN];
inline void addV(long d,long s){
C[d][0] = std::max(C[d][0],C[s][0]);
long i;
for(i=1;i<=C[d][0];i++) C[d][i]+=C[s][i];
for(i=1;i<=C[d][0];i++){
C[d][i+1] += C[d][i]/100;
C[d][i] %= 100;
}
if(C[d][C[d][0]+1]) C[d][0]++;
}
int main()
{
freopen("nunta.in","r",stdin);
freopen("nunta.out","w",stdout);
scanf("%ld",&n);
C[0][0] = C[0][1] = 1;
C[1][0] = C[1][1] = 1;
for(i=2;i<maxN;i++) C[0][i]=C[1][i]=0;
s=0;d=1;
for(i=2;i<=n;i++){
s^=1;d^=1;
addV(d,s);
}
printf("%d",C[d][C[d][0]]);
for(i=C[d][0]-1;i;i--) {
printf("0");
printf("%d",C[d][i]);
}
return 0;
}