Cod sursa(job #2276549)

Utilizator etienAndrone Stefan etien Data 4 noiembrie 2018 20:37:09
Problema Factorial Scor 20
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.64 kb
#include<fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int fact(int n)
{
    int p=5,s=0;
    while(p<=n)
    {
        s=s+n/p;
        p*=5;
    }
    return s;
}
int main()
{
    int P;
    fin>>P;
    if(P==0)
        fout<<"1";
    else
    {

        int N=0;
        //vom cauta cel mai mic N pt care 5 la puterea P divide N factorial, deoarece in descompunerea lui N!
        //in factori primi exponentul lui 2 e mai mare ca al lui 5,deci N! se va divide cu 10 la puterea P,deci se va termina in P zerouri
        while(fact(N)<P)
            N+=5;
        fout<<N;
    }
}