Cod sursa(job #3348731)

Utilizator Octavian09Dore Octaviam Octavian09 Data 23 martie 2026 18:51:01
Problema Nunta Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.81 kb

#include <fstream>

using namespace std;
const int MAX=220;

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

ifstream cin("nunta.in");
ofstream cout("nunta.out");

void adunare(int A[],int B[]){
    int T=0;
    if(A[0]>B[0]) C[0]=A[0];
    else C[0]=B[0];
    for(int i=1;i<=C[0];i++){
        T+=A[i]+B[i];
        C[i]=T%10;
        T/=10;
    }
    if(T>0){
        C[++C[0]]=T;
        T/=10;
    }
    //
    for(int i=1;i<=B[0];i++)
        A[i]=B[i];
    A[0]=B[0];
    //
    for(int i=1;i<=C[0];i++)
        B[i]=C[i];
    B[0]=C[0];
}

int main()
{
    cin >> n;
    A[0]=A[1]=B[0]=1;
    B[1]=2;
    if(n==1) cout << 1;
    else if(n==2) cout << 2;
    else{
        for(int i=3;i<=n;i++)
            adunare(A,B);
        for(int i=B[0];i>=1;i--) cout << B[i];
    }
    return 0;
}