Cod sursa(job #1483412)

Utilizator eu3neuomManghiuc Teodor-Florin eu3neuom Data 9 septembrie 2015 11:31:58
Problema Nunta Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.88 kb
#include <cstdio>
#include <cstring>

using namespace std;

FILE *fin = fopen("nunta.in", "r");
FILE *fout = fopen("nunta.out", "w");

int n, i, t;
int A[200], B[200], C[200];

void Sum(){
    t = 0;
    for(int i = 1; i <= B[0]; i++, t /= 10){
        C[++C[0]] = (t += A[i] + B[i]) % 10;
    }
    if(t != 0){
        C[++C[0]] = t;
    }
    return;
}

void MaxPoint(){
    fscanf(fin, "%d", &n);
    if(n == 1){
        fprintf(fout, "1");
        return;
    } else {
        A[0] = B[0] = A[1] = B[1] = 1;
        for(i = 1; i < n; i++){
            memset(C, 0, sizeof(C));
            Sum();
            memcpy(A, B, sizeof(B));
            memcpy(B, C, sizeof(C));
        }
        for(i = C[0]; i > 0; i--){
            fprintf(fout, "%d", C[i]);
        }
        return;
    }
    return;
}

int main(){
    MaxPoint();
    return 0;
}