Cod sursa(job #425879)

Utilizator AndreiRSStatescu Andrei Rares AndreiRS Data 26 martie 2010 11:05:43
Problema Nunta Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <stdio.h>
#include <string.h>
#define DIM 1001
#define INF 2000000001

FILE *f1 = fopen("nunta.in","r");
FILE *f2 = fopen("nunta.out","w");

int s[DIM],sa[DIM],saa[DIM];

int n;
int i,j;
int nrc,t;

int main(){
	
	fscanf(f1,"%d",&n);
	
	s[0] = 0;
	saa[0] = 1, saa[1] = 1;
	sa[0] = 1, sa[1] = 2;
	
	for(i=3; i<=n; i++){
		
		nrc = sa[0]>saa[0]?sa[0]:saa[0];
		t = 0;
		
		for(j=1; j<=nrc; j++){
			s[j] = (sa[j] + saa[j] + t) % 10;
			t = (sa[j] + saa[j] + t) / 10;			
		}
		s[0] = nrc;
		if(t) 
			s[++s[0]] = t;
		
		memcpy(saa,sa,sizeof(sa));
		memcpy(sa,s,sizeof(s));		
	}
	
	for(i=s[0]; i>=1; i--)
		fprintf(f2,"%d",s[i]);
	
	fclose(f1);
	fclose(f2);
	
	return 0;
}