Pagini recente » Cod sursa (job #2668944) | Cod sursa (job #2447733) | Cod sursa (job #2645098) | Cod sursa (job #2887925) | Cod sursa (job #2785433)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in ("fact.in");
ofstream out ("fact.out");
int nrzero(int n)
{
int nr=0;
for(int i=5; i<=n; i=i*5)
{
nr=nr+n/i;
}
return nr;
}
int main()
{
/*
int n,p;
in>>p;
n=1;
int s=0;
int c=5;
bool ok;
do
{
ok=1;
while(c<=n)
{
s=s+n/c;
c=c*5;
}
if(s!=p)
{
s=0;
c=5;
n=n+1;
ok=0;
}
}while(ok!=1);
out<<n;
*/
int n,p;
in>>p;
int st=1,dr=2000000000,c,mij;
bool ok=0;
while(st<=dr && ok==0)
{
mij=(st+dr)/2;
int x=nrzero(mij);
if(x==p)
{
c=mij;
ok=1;
}
else if(x<p)
st=mij+1;
else
dr=mij-1;
}
if(ok==0)
out<<-1;
else
out<<c-c%5;
return 0;
}