Pagini recente » Cod sursa (job #1019654) | Cod sursa (job #1669479) | Cod sursa (job #2248661) | Cod sursa (job #2638551) | Cod sursa (job #2757297)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
long long teorema_lui_Legendre(long long x)
{
long long sum = 0,put=1;
while(x>=put)
{
put*=5;
sum+=x/put;
}
return sum;
}
long long cautbin(long long p)
{
long long m,n0,in=1,sf=100000000000;
while (in <= sf)
{
m = (in+sf) / 2;
n0 = teorema_lui_Legendre(m);
if(n0<p)
in=m+1;
else if(n0>p)
sf=m-1;
else
{
while(teorema_lui_Legendre(m)==p)
m--;
m++;
return m;
}
}
return -1;
}
int main()
{
long long p;
f >> p;
g << cautbin(p);
return 0;
}