Cod sursa(job #2046011)

Utilizator VladAfrasineiAfrasinei VladAfrasinei Data 23 octombrie 2017 11:43:20
Problema Factorial Scor 95
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.48 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int p,n1,n2,m,x;
int main()
{
    int i;
fin>>p;
if(p==0)
{
    fout<<1;
    return 0;
}
n2=5*p;
n1=1;
int s=0;
while(n1<=n2&&s!=p)
{   s=0;
    m=(n1+n2)/2;
    x=5;
    while(x<=m)
    {
        s+=m/x;
        x=x*5;
    }
    if(s<p)
        n1=m+1;
    else
        n2=m-1;
}
if(n1<=n2)
fout<<m-(m%5);
else
fout<<-1;
    return 0;
}