Cod sursa(job #1483658)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 9 septembrie 2015 18:33:06
Problema Nunta Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.5 kb
#include<cstdio>
#include<cstring>
short A[210],B[210],n,t,i;
int main() {
    freopen("nunta1.txt","r",stdin),freopen("nunta2.txt","w",stdout),scanf("%hd",&n);
    for(A[0]=B[0]=A[1]=B[1]=1;n>1;n--) {
        for(t=0,i=1;i<=A[0]||i<=B[0]||t;i++,t/=10)
            B[i]=(t+=A[i]+B[i])%10;
        for(B[0]=i-1,t=0,i=1;i<=B[0];i++)
            A[i]=B[i]-((i<=A[0])?A[i]:0)-t,A[i]+=(t=A[i]<0)*10;
        for(A[0]=i-1;A[0]>1&&!A[A[0]];A[0]--);
    }
    for(i=B[0];i;i--)
        printf("%hd",B[i]);
}