Pagini recente » Cod sursa (job #338362) | Cod sursa (job #1780727) | Cod sursa (job #2479219) | Cod sursa (job #2725885) | Cod sursa (job #612893)
Cod sursa(job #612893)
#include <fstream>
using namespace std;
int n, a[3][1000], zero[1000];
void suma(int a[], int b[]) // a = a + b
{
int i, t = 0;
for (i = 1; i <= a[0] || i <= b[0] || t; ++i, t /= 10)
a[i] = (t += a[i] + b[i]) % 10;
a[0] = i - 1;
}
void copie(int a[], int b[]) // a = b;
{
for (int i = 0; i <= b[0]; ++i)
a[i] = b[i];
if (a[0] == 999) a[0] = 0;
}
int main()
{
ifstream f("nunta.in");
ofstream g("nunta.out");
f >> n;
// a[2] = a[1] + a[0];
// a[0] = a[1]
// a[1] = a[2]
a[1][0] = a[1][1] = 1; zero[0] = 999;
for (int i = 1; i <= n; ++i)
suma(a[2], a[1]), suma(a[2], a[0]), copie(a[0], a[1]), copie(a[1], a[2]), copie(a[2], zero);
for (int i = a[1][0]; i >= 1; --i)
g << a[1][i];
g.close();
return 0;
}