Cod sursa(job #845702)

Utilizator sddddgjdZloteanu Anastasia sddddgjd Data 31 decembrie 2012 13:39:18
Problema Nunta Scor 10
Compilator c Status done
Runda Arhiva de probleme Marime 0.82 kb
#include<stdio.h>
int v1[1000],v2[1000],v3[1000];
void add(int A[], int B[])
{
    int i, t = 0;
    for (i=1; i<=A[0] || i<=B[0] || t; i++, t/=10)
        A[i] = (t += A[i] + B[i]) % 10;
    A[0] = i - 1;
}
int main()
{
    FILE *fin,*fout;
    fin=fopen("nunta.in","r");
    fout=fopen("nunta.out","w");
    int n;
    fscanf(fin,"%d",&n);
    v1[0]=v1[1]=1;
    v2[0]=v2[1]=1;
    if(n==1)
        fprintf(fout,"1");
    else if(n==2)
        fprintf(fout,"1");
    else
    {
        int i;
        for(i=1; i<=n-1; i++)
        {
            int j;
            for(j=0;j<=v2[0];j++)
                v3[j]=v2[j];
            add(v2,v1);
            for(j=0;j<=v3[0];j++)
                v1[j]=v3[j];
        }
        for(i=1;i<=v2[0];i++)
            fprintf(fout,"%d",v2[i]);
    }
    return 0;
}