Cod sursa(job #3240909)

Utilizator AnaMateiAna Matei AnaMatei Data 23 august 2024 17:22:28
Problema Nunta Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.14 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f("nunta.in");
ofstream g("nunta.out");

int nr1[501], nr2[501], nr3[501];

void adunare(int nr1[], int nr2[], int rez[])
{
    int i, tineMinte=0;
    rez[0]=nr2[0];
    for(i=1; i<=nr2[0]; i++)
    {
        tineMinte=nr1[i]+nr2[i]+tineMinte;
        rez[i]=tineMinte%10;
        tineMinte=tineMinte/10;
    }
    while(tineMinte>0)
    {
        rez[++rez[0]]=tineMinte%10;
        tineMinte=tineMinte/10;
    }
}

void copiaza(int nr1[], int nr2[])
{
    int i;
    for(i=0; i<=nr2[0]; i++)
        nr1[i]=nr2[i];
}

void afisare(int rez[])
{
    int i;
    for(i=rez[0]; i>=1; i--)
        g<<rez[i];
}

int main()
{
    int n, i;
    f>>n;
    if(n==0)
        g<<0;
    else
        if(n==1)
            g<<1;
        else
        {
            nr1[0]=nr2[0]=1;
            nr1[1]=0;
            nr2[1]=1;
            for(i=1; i<=n; i++)
            {
                adunare(nr1, nr2, nr3);
                copiaza(nr1, nr2);
                copiaza(nr2, nr3);
            }
        }
    afisare(nr3);
    return 0;
}