Pagini recente » Cod sursa (job #275553) | Cod sursa (job #2823058) | Cod sursa (job #704099) | Cod sursa (job #908139) | Cod sursa (job #524383)
Cod sursa(job #524383)
# include <fstream>
# include <iostream>
# define DIM 300
using namespace std;
int n, a[3][DIM];
void add(int c[], int a[], int b[])
{
int N;
if(a[0]<b[0])
{
for(int i=a[0]+1;i<=b[0];++i)
a[i]=0;
N=b[0];
}
else
{
for(int i=b[0]+1;i<=a[0];++i)
b[i]=0;
N=a[0];
}
int q, t=0;
for(int i=1;i<=N;++i)
{
q=a[i]+b[i]+t;
c[i]=q%10;
t=q/10;
}
c[0]=N;
while (t)
{
c[++c[0]]=t%10;
t/=10;
}
}
int main ()
{
ifstream fin ("nunta.in");
ofstream fout ("nunta.out");
fin>>n;
if (n==1)fout<<"1";
else if (n==2)fout<<"2";
else
{
a[1][0]=a[1][1]=1;
a[2][0]=1;a[2][1]=2;
for(int i=3;i<=n;++i)
add(a[i%3],a[(i-1)%3],a[(i-2)%3]);
int p=n%3;
for(int i=a[p][0];i;--i)
fout<<a[p][i];
}
return 0;
}