Pagini recente » Cod sursa (job #2632867) | Cod sursa (job #1525372) | Cod sursa (job #2216630) | Cod sursa (job #1786898) | Cod sursa (job #2297806)
#include <fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
long long n;
//la ce putere imi apare 5! in scrierea nr, atatia de 0 am
int legendre(long long x)
{
long long s=0;
long long numitor=5;
while(numitor<=x)
{
s=s+x/numitor;
numitor=numitor*5;
}
return s;
}
int main()
{
long long st=1, dr=2000000000, med, solutie, lm;
int p;
fin>>p;
bool ok=1;
while(st<=dr)
{
med=(dr+st)>>1;
lm=legendre(med);
if(lm==p)
{
solutie=med;
dr=med-1;
ok=0;
}
else
{
if(lm>p)
dr=med-1;
else
st=med+1;
}
}
if(ok==1)
fout<<"-1"<<"\n";
else
fout<<solutie<<"\n";
return 0;
}