Cod sursa(job #1140475)

Utilizator TarabanDragosTaraban Dragos-Petru TarabanDragos Data 12 martie 2014 00:37:01
Problema Nunta Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.85 kb
#include<cstdio>
int n,i,j,x[255],y[255],v[255];
FILE *f,*g;
void cpy(int v[],int x[]){
    for(int i=0;i<=x[0];i++){
        v[i]=x[i];
    }
}
void sum(int v[],int x[],int y[]){
    int t=0,i;
    if(v[0]>x[0])
        y[0]=v[0];
    else
        y[0]=x[0];
    for(i=1;i<=y[0];i++){
        y[i]=(v[i]+x[i]+t)%10;
        t=(v[i]+x[i]+t)/10;
    }
    if(t!=0)
        y[++y[0]]=1;

}
int main(){
    f=fopen("nunta.in","r");
    g=fopen("nunta.out","w");
    fscanf(f,"%d",&n);
    x[0]=y[0]=x[1]=1;
    y[1]=2;
    for(i=3;i<=n;i++){
        cpy(v,x);
        cpy(x,y);
        sum(v,x,y);
    }
    if(n==2)
        fprintf(g,"2");
    else if(n==1)
        fprintf(g,"1");
    else{
        for(i=y[0];i>=1;i--){
            fprintf(g,"%d",y[i]);
        }
    }


    fclose(f);
    fclose(g);
    return 0;
}