Pagini recente » Cod sursa (job #1309888) | Cod sursa (job #1895485) | Cod sursa (job #1594346) | Cod sursa (job #2286198) | Cod sursa (job #1606038)
#include <cstdio>
using namespace std;
char a[205], b[205], c[205];
short na, nb, nc;
int n;
/// c = a + b
inline void Aduna()
{
short i, t, x;
t = 0;
nc = nb;
for (i = 1; i <= nb; ++i)
{
x = (a[i]-'0') + (b[i]-'0') + t;
if (x >= 10) {c[i] = x - 10 + '0'; t = 1;}
else {c[i] = x + '0'; t = 0;}
}
if (t > 0)
c[++nc] = '1';
}
int main()
{
short i, j;
freopen("nunta.out", "w", stdout);
freopen("nunta.in", "r", stdin);
scanf("%d", &n);
if (n == 1)
{
printf("1\n");
return 0;
}
if (n == 2)
{
printf("2\n");
return 0;
}
for (i = 0; i <= 204; ++i)
a[i] = b[i] = c[i] = '0';
a[1] = '1'; na = 1;
b[1] = '2'; nb = 1;
for (i = 3; i <= n; ++i)
{
Aduna();
na = nb;
for (j=1;j<=na;++j)
a[j] = b[j];
nb = nc;
for (j=1;j<=nb;++j)
b[j] = c[j];
}
for (i = nc; i >= 1; --i)
printf("%c",c[i]);
printf("\n");
return 0;
}