Cod sursa(job #1596923)
Utilizator | Data | 11 februarie 2016 15:16:29 | |
---|---|---|---|
Problema | Factorial | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.63 kb |
#include <fstream>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
int main()
{
int a,b,c,m,p,x;
f>>p;
a=1;
b=1000000000;
while(a<=b)
{
m=(a+b)/2;
x=m;
c=0;
while(m!=0)
{
c=c+m/5;
m=m/5;
}
if(c==p)
{
if(x-x%5==0)
g<<"1";
else
g<<x-x%5;
b=-1;
}
else
if(c<p)
a=(a+b)/2+1;
else b=(a+b)/2-1;
}
if(b!=-1)
g<<"-1";
return 0;
}