Cod sursa(job #1824230)

Utilizator TataruTataru Mihai Tataru Data 7 decembrie 2016 16:22:23
Problema Nunta Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <cstdio>

int n, A[2][302];

void add(int a[], int b[])
{
    int u = 0, i = 1;
    while((i <= b[0]) || (u > 0))
    {
        u += a[i] + b[i];
        a[i] = u % 10;
        u /= 10;
        i++;
    }
    i--;
    if(i > a[0])
        a[0] = i;
}

int main()
{
    freopen("nunta.in", "r", stdin);
    freopen("nunta.out", "w", stdout);
    scanf("%d", &n);
    A[0][0] = A[0][1] = A[1][0] = A[1][1] = 1;
    for(int i = 2; i <= n; ++i)
        add(A[i & 1], A[1 - (i & 1)]);
    for(int i = A[n & 1][0]; i > 0; --i)
        fputc(A[n & 1][i] + '0', stdout);
    return 0;
}