Cod sursa(job #2109290)

Utilizator lixiLixandru Andrei lixi Data 19 ianuarie 2018 15:46:21
Problema Nunta Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include<cstdio>

unsigned char A[212], B[212];
void Add( unsigned char A[],unsigned char B[])
{
    int T = 0;
    A[0] = B[0];
    for(int i = 1; i <= B[0]; i++)
    {
        A[i] += T + B[i];
        T = A[i] / 10;
        A[i] %= 10;
    }
    if(T > 0)
        A[++A[0]] = T;
}
int main()
{
    int N;
    FILE *f = fopen("nunta.in", "r");
    FILE *g = fopen("nunta.out", "w");
    fscanf(f, "%d", &N);
    A[0] = B[0] = 1;
    A[1] = 0;
    B[1] = 1;
    unsigned char *f1 = A, *f2 = B, *aux;
    for(int i = 1; i <= N; i++)
    {
        Add(f1, f2);
        aux = f1;
        f1 = f2;
        f2 = aux;
    }
    for(int i = f2[0]; i > 0; i--)
       // fprintf(g, "%d", f2[i]);
       fputc(char(f2[i]+'0'),g);
    return 0;
}