Pagini recente » Cod sursa (job #676658) | Cod sursa (job #910044) | Cod sursa (job #2620426) | Cod sursa (job #2249070) | Cod sursa (job #995130)
Cod sursa(job #995130)
#include <fstream>
#include <algorithm>
using namespace std;
int n,a[220],b[220],lena,lenb;
inline void Read()
{
ifstream fin("nunta.in");
fin>>n;
fin.close();
}
inline void Adunare(int a[], int &n, int b[], int m)
{
int i,x,rest,k;
k=max(n,m);rest=0;
for(i=1;i<=k;i++)
{
x=a[i]+b[i]+rest;
if(x>9)
{
a[i]=x-10;
rest=1;
}
else
{
a[i]=x;
rest=0;
}
}
n=k;
while(rest)
{
a[++n]=rest%10;
rest/=10;
}
}
inline void Solve()
{
ofstream fout("nunta.out");
int i,j,maxim,aux;
lena=1;a[1]=0;
lenb=1;b[1]=1;
for(i=1;i<=n;i++)
{
Adunare(a,lena,b,lenb);
maxim=max(lena,lenb);
for(j=1;j<=maxim;j++)
{
aux=a[j];
a[j]=b[j];
b[j]=aux;
}
aux=lena;
lena=lenb;
lenb=aux;
}
for(i=lenb;i>=1;i--)
fout<<b[i];
fout<<"\n";
fout.close();
}
int main()
{
Read();
Solve();
return 0;
}