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