Pagini recente » Cod sursa (job #1269557) | Cod sursa (job #2352366) | Cod sursa (job #2763467) | Cod sursa (job #1629303) | Cod sursa (job #2944190)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
long long int P;
long long int factorial(int n)
{
long long int j = 1;
for(int i = 1; i <= n; i++)
{
j *= i;
}
return j;
}
long long legendre(int k, long long n)
{
long long p, numitor;
p = 0;
numitor = k;
while(n >= numitor)
{
p += n / numitor;
numitor *= k;
}
return p;
}
int bs(int st, long long int dr)
{
long long int med, last = -1;
while(st <= dr)
{
med = st + (dr - st) / 2;
cout << legendre(5, med) << "\n";
if(legendre(5, med) >= P)
{
last = med;
dr = med - 1;
}
else
st = med + 1;
}
}
int main()
{
int ans;
fin >> P;
long long lin = 1ll << 62;
ans = bs(1, lin);
fout << ans;
fin.close();
fout.close();
return 0;
}