Cod sursa(job #587913)

Utilizator Catah15Catalin Haidau Catah15 Data 6 mai 2011 14:01:05
Problema Nunta Scor 100
Compilator cpp Status done
Runda speedt2 Marime 0.84 kb
#include <iostream>

using namespace std;

#define maxDim 205


void add (int a[maxDim], int b[maxDim])
{
	int i, dima = 0;
	for (i = 1; i <= a[0] || i <= b[0] || dima; ++ i)
	{
		dima += a[i] + b[i];
		a[i] = dima % 10;
		dima /= 10;
	}
	
	a[0] = i - 1;
}


int main()
{
	freopen ("nunta.in", "r", stdin);
	freopen ("nunta.out", "w", stdout);
	
	int N;
	int prez[maxDim], ant[maxDim], ult[maxDim];
	
	memset (prez, 0, sizeof (prez));
	memset (ant, 0, sizeof (ant));
	memset (ult, 0, sizeof (ult));
	
	
	scanf ("%d", &N);
	
	
	ult[0] = 1;
	ult[1] = 1;

	
	for (int i = 1; i <= N; ++ i)
	{
		memcpy (prez, ant, sizeof (ant));
		
		add (prez, ult);
		
		memcpy (ant, ult, sizeof (ult));
		memcpy (ult, prez, sizeof (prez));
	}
	
	
	for (int i = ult[0]; i >= 1; -- i)
		printf ("%d", ult[i]);
	
	return 0;
}