Cod sursa(job #1204712)

Utilizator EpictetStamatin Cristian Epictet Data 3 iulie 2014 18:38:02
Problema Nunta Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <cstdio>
using namespace std;
int n, N1[210], N2[210];

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

inline void Write (int A[])
{
    for (int i=A[0]; i>=1; i--) printf("%d", A[i]);
    printf("\n");
}

int main()
{
    freopen("nunta.in", "r", stdin);
    freopen("nunta.out", "w", stdout);
    scanf("%d", &n);
    N1[0] = N2[0] = N2[1] = 1;
    for (int i=1; i<=n; i++)
    {
        if (i & 1) add (N1, N2);
        else       add (N2, N1);
    }
    if (n & 1) Write(N1);
    else       Write(N2);
    return 0;
}