Pagini recente » Cod sursa (job #1033536) | Cod sursa (job #14530) | Cod sursa (job #998825) | Cod sursa (job #1444399) | Cod sursa (job #3130251)
#include <bits/stdc++.h>
#define N 100000
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int Puteri5(int n)
{
int ct = 0;
for(int i = 5; i <= n; i *= 5)
ct += n / i;
return ct;
}
int main()
{
// 2000000000! are 500000061 zerouri
// log2(2000000000) = 31 * log5(2000000000)
int p;
fin >> p;
int st = 1, dr = 2000000000;
int mij;
int possible;
while(st <= dr)
{
mij = (st + dr) / 2;
int ct5 = Puteri5(mij);
if(ct5 == p)
{
possible = mij;
dr = mij - 1;
}
else if(ct5 < p) st = mij + 1;
else dr = mij - 1;
}
fout << possible;;
return 0;
}