Cod sursa(job #1007917)

Utilizator Dddarius95Darius-Florentin Neatu Dddarius95 Data 9 octombrie 2013 21:21:31
Problema Nunta Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <fstream>
#include <string.h>
#define Nmax 215
using namespace std;
ifstream f("nunta.in");
ofstream g("nunta.out");

int n,Ante[Nmax],Prec[Nmax],Curent[Nmax];



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

int main()
{
    f>>n;
    if(n==1){g<<1<<'\n';return 0;}
    if(n==2){g<<2<<'\n';return 0;}
    Ante[++Ante[0]]=1;
    Prec[++Prec[0]]=2;
    for(int i=3;i<=n;++i)
    {
        Add(Ante,Prec,Curent);
        memcpy(Ante,Prec,sizeof(Prec));
        memcpy(Prec,Curent,sizeof(Curent));
    }
    for(int i=Curent[0]; i ; --i)g<<Curent[i];
    g<<'\n';

    f.close();g.close();
    return 0;
}