Pagini recente » Cod sursa (job #1314597) | Cod sursa (job #2660627) | Cod sursa (job #2156729) | Cod sursa (job #2217556) | Cod sursa (job #1676034)
#include <iostream>
#include <fstream>
using namespace std;
char nr1[200],nr2[200];
void adun1()
{
int i,maxx;
if(nr1[0]>nr2[0])
maxx=nr1[0];
else
maxx=nr2[0];
for( i=1;i<=maxx;i++)
{
nr1[i]=nr1[i]+nr2[i];
if(nr1[i]/10!=0)
{
nr1[i+1]+=nr1[i]/10;
nr1[i]%=10;
}
}
nr1[0] = i - 1;
if(nr1[i]!=0)
nr1[0]++;
}
void adun2()
{
int i,maxx;
if(nr1[0]>nr2[0])
maxx=nr1[0];
else
maxx=nr2[0];
for( i=1;i<=maxx;i++)
{
nr2[i]=nr1[i]+nr2[i];
if(nr2[i]/10!=0)
{
nr2[i+1]+=nr2[i]/10;
nr2[i]%=10;
}
}
nr2[0] = i - 1;
if(nr2[i]!=0)
nr2[0]++;
}
int main()
{
freopen("nunta.in", "r", stdin);
freopen("nunta.out", "w", stdout);
int n,i;
scanf ("%d", &n);
nr1[0]=1;
nr2[0]=1;
nr2[1]=2;
nr1[1]=1;
if(n==1)
printf("%d", nr1);
else if(n==2)
printf("%d", nr2);
else
{
for( i=3;i<=n;i++)
{
if(i%2!=0)
adun1();
else
adun2();
}
if((i-1)%2==0)
{
for(int j=nr2[0];j>=1;j--)
printf("%d", nr2[j]);
}
else
{
for(int j=nr1[0];j>=1;j--)
printf("%d", nr1[j]);
}
}
}