Cod sursa(job #478913)

Utilizator mihai995mihai995 mihai995 Data 21 august 2010 00:19:34
Problema Nunta Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <fstream>
using namespace std;

int a[1<<10],b[1<<10],c[1<<10];

ifstream in("nunta.in");
ofstream out("nunta.out");

void copy(int a[],int b[])
{
	for (int i=0;i<1<<10;i++)
		a[i]=b[i];
}

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

void print(int v[])
{
	for (int i=v[0];i;i--)
		out<<v[i];
	out<<"\n";
}

int main()
{
	int n;
	in>>n;
	if (n<2)
	{
		out<<"1\n";
		return 0;
	}
	n-=1;
	a[0]=a[1]=b[0]=b[1]=1;
	while (n--)
	{
		copy(c,b);
		copy(b,a);
		add(a,c);
	}
	print(a);
	return 0;
}