Cod sursa(job #191522)

Utilizator wefgefAndrei Grigorean wefgef Data 27 mai 2008 01:57:24
Problema Nunta Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <cstdio>

const int MAXL = 256;
const int BASE = 10;

int N;
int A[2][MAXL];

void Scrie(int A[]) {
	for (int i = A[0]; i; --i)
		printf("%d", A[i]);
	printf("\n");
}

void Aduna(int A[], int B[]) {
	int i, t = 0;
	for (i = 1; i <= A[0] || i <= B[0] || t; ++i, t /= BASE)
		A[i] = (t += A[i] + B[i]) % BASE;
	A[0] = i-1;
}

int main() {
	freopen("nunta.in", "r", stdin);
	freopen("nunta.out", "w", stdout);

	scanf("%d", &N);
	A[0][0] = A[0][1] = 1;
	A[1][0] = A[1][1] = 1;
	for (int i = 2, p = 0; i <= N; ++i, p^= 1)
		Aduna(A[p], A[p^1]);
	Scrie(A[N&1]);
}