Cod sursa(job #2022597)

Utilizator LeVladzCiuperceanu Vlad LeVladz Data 16 septembrie 2017 19:36:13
Problema Nunta Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <cstdio>

using namespace std;

FILE *fin = fopen("nunta.in", "r");
FILE *fout = fopen("nunta.out", "w");

short n,i,nrcif;
char a[209],b[209];

void adun(char A[], char B[])
{
    short t = 0;
    short aux = 0;
    for (short i=0; i<=nrcif; i++)
    {
        aux = B[i];
        B[i] += A[i]+t;
        if (B[i] >= 10)
        {
            t = 1;
            B[i] -= 10;
        }
        else
            t = 0;
        A[i] = aux;
    }
    if (t != 0)
        B[++nrcif] = t;
}

int main()
{
    fscanf(fin, "%hd", &n);
    if (n == 1)
    {
        fprintf(fout, "%d", 1);
        return 0;
    }
    a[0] = b[0] = 1;
    for (i=1; i<=n-1; i++)
        adun(a, b);
    for (i=nrcif; i>=0; i--)
        fprintf(fout, "%d", (int)b[i]);
    return 0;
}