Cod sursa(job #417999)

Utilizator Cristi09Cristi Cristi09 Data 15 martie 2010 11:52:23
Problema Nunta Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.87 kb
#include<stdio.h>
int a[500],b[500],c[500],n;
void Add(int x[],int y[])
{
	int val=0,xi,yi;
	xi=1;
	yi=1;
	for(;xi<=x[0]&&yi<=y[0];++xi,++yi)
	{
		x[xi]+=val;
		val=0;
		val=x[xi]+y[yi];
		x[xi]=val%10;
		val/=10;
	}
	while(val)
	{
		x[xi]+=val;
		val=x[xi]/10;
		x[xi]=x[xi]%10;
		++xi;
	}
	x[0]=xi-1;
}
void read(int x[])
{
	int nrc,i=1;
	scanf("%d",&nrc);
	x[0]=nrc;
	for(;i<=nrc;++i)
		scanf("%d",&x[i]);
}
void afis(int x[])
{
	FILE*g=fopen("nunta.out","w");
	int i=x[0];
	for(;i>0;--i)
		fprintf(g,"%d",x[i]);
}
void copy(int dest[],int sursa[])
{
	dest[0]=sursa[0];
	int i=1;
	for(;i<=dest[0];++i)
		dest[i]=sursa[i];
}
int main()
{
	FILE*f=fopen("nunta.in","r");
	fscanf(f,"%d",&n);
	fclose(f);
	//++n;
	a[0]=1;a[1]=0;
	b[0]=1;b[1]=1;
	while(n)
	{
		--n;
		copy(c,a);
		copy(a,b);
		Add(b,c);
	}
	afis(b);
	return 0;
}