Cod sursa(job #1662005)

Utilizator mihai.constantinConstantin Mihai mihai.constantin Data 24 martie 2016 13:28:24
Problema Nunta Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <cstdio>
using namespace std;

char a[205], b[205];

short na, nb;

inline void suma()
{
    short i, aux, t = 0;

    for(i = 1; i <= na || i <= nb || t != 0; i++)
    {
        aux = (a[i] - '0') + (b[i] - '0') + t;

        a[i] = b[i];

        b[i] = (char)('0' + aux % 10);

        t = aux / 10;
    }

    na = nb;

    nb = i - 1;
}

int main()
{
    freopen("nunta.in", "r", stdin);
    freopen("nunta.out", "w", stdout);

    short i, N;

    scanf("%hd", &N);

    if(N == 1 || N == 2) printf("%hd", N);
    else
    {
        for(i = 0; i <= 205; i++) a[i] = b[i] = '0';

        na = nb = 1;

        a[1] = '1';
        b[1] = '2';

        for(i = 3; i <= N; i++) suma();

        for(i = nb; i >= 1; i--) printf("%c", b[i]);
    }

    return 0;
}