Pagini recente » Cod sursa (job #2962951) | Cod sursa (job #160277) | Cod sursa (job #919885) | Cod sursa (job #2882801) | Cod sursa (job #552216)
Cod sursa(job #552216)
#include <fstream>
using namespace std;
int n,i;
int Fa[1001],Fb[1001],Fc[1001];
int fa,fb,fc,z;
ifstream f("nunta.in");
ofstream g("nunta.out");
void suma(int Fa[1001], int Fb[1001], int Fc[1001], int &fa, int &fb, int &fc)
{
int i,t=0,s;
if (fb>fa)
for (i=1;i<=fb-fa;++i)
Fa[++fa]=0;
for (i=1;i<=fc;++i)
Fc[i]=0;
fc=0;
for (i=1;i<=fb;++i)
{
s=Fb[i]+Fa[i]+t;
Fc[++fc]=s%10;
t=s/10;
}
if (t!=0)
Fc[++fc]=t;
}
int main()
{
f>>n;
if (n<4)
{
if (n==1)
g<<1;
else if (n==2)
g<<2;
else if (n==3)
g<<3;
return 0;
}
else
{
fa=fb=1;
Fa[1]=1;
Fb[1]=2;
for (i=3;i<=n;++i)
{
suma(Fa,Fb,Fc,fa,fb,fc);
for (z=1;z<=fb;++z)
Fa[z]=Fb[z];
fa=fb;
for (z=1;z<=fc;++z)
Fb[z]=Fc[z];
fb=fc;
}
for (i=fc;i>=1;--i)
g<<Fc[i];
}
f.close();
g.close();
return 0;
}