Cod sursa(job #1483222)

Utilizator eu3neuomManghiuc Teodor-Florin eu3neuom Data 8 septembrie 2015 22:59:49
Problema Nunta Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <iostream>
#include <fstream>
#include <cstring>

using namespace std;

ifstream fin("nunta.in");
ofstream fout("nunta.out");

const int NMax = 200;

int n;
int A[NMax], B[NMax], C[NMax];

void sum(){
    int i, t = 0;
    for(i = 1; i <= A[0] || i <= B[0] || t; i++){
        t += A[i] + B[i];
        C[i] = t % 10;
        t /= 10;
    }
    C[0] = i - 1;
}

void solve(){
    A[0] = B[0] = 1;
    A[1] = 3; B[1] = 5;
    for(int i = 4; i <= n; i++){
        sum();
        memcpy(A, B, sizeof(B));
        memcpy(B, C, sizeof(C));
        memset(C, 0, sizeof(C));
    }
    for(int i = A[0]; i > 0; i--){
        fout << A[i];
    }
}

int main(){
    fin >> n;
    if(n <= 3){
        fout << n;
    } else {
        solve();
    }
    return 0;
}