Cod sursa(job #2053110)

Utilizator HD650Stoicescu Adrian Nicolae HD650 Data 31 octombrie 2017 15:30:19
Problema Nunta Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include<bits/stdc++.h>

using namespace std;

unsigned char f0[210] = {1, 0}, f1[210] = {1, 1};
unsigned char *F0 = f0, *F1 = f1;
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, *g;
    f = fopen("nunta.in", "r");
    g = fopen("nunta.out", "w");
    fscanf(f, "%d", &N);
    for(int i = 1; i <= N; i++)
    {
        add(F0, F1);
        swap(F0, F1);
    }
    for(int i = F1[0]; i > 0; i--)
        fputc(char(F1[i]+'0'),g);
        //fprintf(g, "%d", F1[i]);

    return 0;
}