Pagini recente » Cod sursa (job #1188518) | Cod sursa (job #2427708) | Cod sursa (job #2357378) | Cod sursa (job #1659463) | Cod sursa (job #863475)
Cod sursa(job #863475)
#include <fstream>
using namespace std;
ifstream fin ("factorial.in");
ofstream fout ("factorial.out");
int p,i,j,m,k,u,s,d,v[15];
int main () {
fin>>p;
v[0]=1;
for (i=5;i<=p*5;i=i*5)
v[++d]=i;
v[++d]=2000000000;
k=1;
u=p*5;
while (k<=u) {
m=(k+u)/2;
s=0;
for (j=1;v[j]<=m;j++)
s=s+m/v[j];
if (s>=p)
u=m-1;
else
k=m+1;
}
s=0;
for (j=1;v[j]<=k;j++)
s=s+k/v[j];
if (s==p)
fout<<k<<"\n";
else
if (p==0)
fout<<v[0];
else
fout<<-1<<"\n";
return 0;
}