Cod sursa(job #191553)

Utilizator ciprianfFarcasanu Alexandru Ciprian ciprianf Data 27 mai 2008 10:06:47
Problema Nunta Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <stdio.h>
#include <string.h>
#define N 200
void adun(char A[],char B[],char C[]){
	int t=0,i;
	for(i=1;i<=A[0] || i<=B[0] || t;t/=10,i++)
		C[i]= (t+=A[i]+B[i])%10;
	C[0]=i-1;
}
void copiez(char A[],char B[]){
	for (int i=0;i<=A[0]; i++)
		B[i]=A[i];
}
int main(){
	int n,i;
	char a[N]={1,2},b[N]={1,3},c[N]={0};
	freopen("nunta.in","r",stdin);
	freopen("nunta.out","w",stdout);
	scanf("%d",&n);
	if(n==1 || n==2 || n==3) {
		printf("%d",n);
		return 0;
	}
	for (i=4;i<=n;i++){
		adun(a,b,c);
		copiez(b,a);
		copiez(c,b);
	}

	for(i=b[0];i>=1;i--)
		printf("%d",b[i]);
	return 0;
}