Cod sursa(job #675235)

Utilizator luca.boieruBoieru Luca luca.boieru Data 7 februarie 2012 14:20:40
Problema Nunta Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <cstdio>

int a[1005], b[1005];

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

int main(){
	
	freopen("nunta.in", "r", stdin);
	freopen("nunta.out", "w", stdout);
	
	int n, i;
	
	a[0] = 1;
	a[1] = 1;
	b[0] = 1;
	b[1] = 2;
	
	scanf("%d", &n);
	
	for(i = 1; i <= n - 2; ++ i){
		
		if(i & 1) add(a, b);
		else add(b, a);
		
	}
	int x = i;
	
	if(n == 1) {printf("1"); return 0;}
	
	if(x & 1)
		for(i = b[0]; i >= 1; -- i)
			printf("%d", b[i]);
	else
		for(i = a[0]; i >= 1; -- i)
			printf("%d", a[i]);
		
	
	return 0;
}