Cod sursa(job #1553477)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 19 decembrie 2015 22:20:36
Problema Nunta Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.46 kb
#include<cstdio>
FILE *f=fopen("nunta.in","r"),*g=fopen("nunta.out","w");
short n,i,t,c,d;
char a[210],b[210];
int main() {
    fscanf(f,"%hd",&n);
    for(c=d=a[1]=b[1]=1;n>1;n--) {
        for(t=0,i=1;i<=c||i<=d||t;i++,t/=10)
            b[i]=(t+=a[i]+b[i])%10;
        for(d=i-1,t=0,i=1;i<=d;i++)
            a[i]=b[i]-(i<=c?a[i]:0)-t,a[i]+=(t=a[i]<0)*10;
        for(c=i-1;c>1&&!a[c];c--);
    }
    for(i=d;i;i--)
        fprintf(g,"%hd",b[i]);
}