Cod sursa(job #2019900)

Utilizator stefdascalescuStefan Dascalescu stefdascalescu Data 8 septembrie 2017 20:05:18
Problema Nunta Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.05 kb
#include<cstdio>
char a[300],b[300],c[300];
int la,lb,lc,n;
int main()
{
    freopen("nunta.in","r",stdin);
    freopen("nunta.out","w",stdout);
    scanf("%d",&n);
    if(n==1)
        printf("1");
    else
        if(n==2)
            printf("2");
        else
        {
            a[1]=1;
            b[1]=2;
            la=1;
            lb=1;
            for(int i=3;i<=n;++i){
                for(int j=1;j<=lb;++j)
                    c[j]=a[j]+b[j];
                lc=lb;
                for(int j=1;j<=lc;++j)
                    if(c[j]>10)
                    {
                        c[j+1]++;
                        c[j]-=10;
                        if(j==lc)
                            ++lc;
                    }
                for(int j=1;j<=lb;++j)
                    a[j]=b[j];
                la=lb;
                for(int j=1;j<=lc;++j)
                    b[j]=c[j];
                lb=lc;
            }
            for(int i=lc;i>=1;--i)
                printf("%d",c[i]);
        }
    return 0;
}