Pagini recente » Cod sursa (job #3122334) | Cod sursa (job #354769) | Cod sursa (job #331071)
Cod sursa(job #331071)
#include<stdio.h>
int a[3000],b[3000],i,j,n,m,aux[3000];
void copy( int a[],int b[])
{
int i;
for(i=1;i<=b[0];i++) a[i]=b[i];
for(i=b[0]+1;i<=a[0];i++) a[i]=0;
a[0]=b[0];
}
void add(int A[], int B[])
{
int i, t = 0;
for (i=1; i<=A[0] || i<=B[0] || t; i++, t/=10)
A[i] = (t += A[i] + B[i]) % 10;
A[0] = i - 1;
}
int main()
{
freopen("nunta.in","r",stdin);
freopen("nunta.out","w",stdout);
scanf("%d",&n);
if(n<=2) { printf("%d\n",n);
fclose(stdin);
fclose(stdout);
return 0;
}
a[++a[0]]=2;
b[++b[0]]=1;
for(i=3;i<=n;i++) { copy(aux,a);
add(a,b);
copy(b,aux);
}
for(i=a[0];i>=1;--i) printf("%d",a[i]);
printf("\n");
fclose(stdin);
fclose(stdout);
return 0;
}