Cod sursa(job #2782369)

Utilizator damiantudorDamian Tudor Christian damiantudor Data 12 octombrie 2021 11:54:15
Problema Factorial Scor 5
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.96 kb
#include <bits/stdc++.h>

using namespace std;

ifstream in("fact.in");
ofstream out("fact.out");

int p;
bool iesire=1,corect;

int hehe(int nr)
{
    int cate=0;
    while (nr/5!=0&&cate<=p)
    {
        cate+=nr/5;
        nr/=5;
    }
    return cate;
}

int factorial(int p)
{
    int cate=0,nr=p*4-(p*4)%5;
    if(p==0)
        return 1;
    else
    {
        while(!iesire&&!corect)
        {
            cate=hehe(nr);
            if(cate > p)
            {
                iesire=0;
            }
            else if(cate == p)
            {
                corect = true;
            }
            else
            {
                if(nr >= 5)
                    nr+=5;
                else
                    nr++;
                cate=0;
            }
        }
    }

    if(iesire==0)
        return -1;
    else
        return nr;
}

int main()
{
    in>>p;
    out<<factorial(p);
    return 0;
}