Cod sursa(job #1839405)

Utilizator giotoPopescu Ioan gioto Data 2 ianuarie 2017 21:11:16
Problema Nunta Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <cstdio>
using namespace std;

const int MOD = 1000000000;
int aux, t, i, T, n, a[5], b[5];
int main()
{
    freopen("nunta.in", "r", stdin);
    freopen("nunta.out", "w", stdout);
    scanf("%d", &n);
    a[0] = 1; b[0] = 1;
    a[1] = 1; b[1] = 1;
    for(t = 2; t <= n ; ++t){
        T = 0;
        for(i = 1; i <= b[0] ; ++i){
            aux = b[i];
            b[i] += a[i] + T;
            T = b[i] / MOD;
            b[i] %= MOD;
            a[i] = aux;
        }
        a[0] = b[0];
        if(T) b[++b[0]] = T;
    }
    printf("%d", b[b[0]]);
    for(i = b[0] - 1; i >= 1 ; --i){
        if(b[i] == 0) {printf("000000000"); continue ;}
        aux = b[i];
        while(b[i] < MOD / 10)
            printf("0"), b[i] *= 10;
        printf("%d", aux);
    }
    return 0;
}