Cod sursa(job #2150361)
Utilizator | Data | 3 martie 2018 15:06:53 | |
---|---|---|---|
Problema | Factorial | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.5 kb |
#include <fstream>
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
long long zero(long long x)
{
long long sum=0;
for (long long i=5; i<=x; i*=5)
sum+=(x/i);
return sum;
}
int main()
{
long long p,inc,sf,mij;
in>>p;
inc=1;
sf=5*p;
while (inc<=sf)
{
mij=(inc+sf)/2;
if(zero(mij)<p)
inc=mij+1;
else sf=mij-1;
}
if (zero(inc)==p) out<<inc;
else out<<-1;
return 0;
}