Pagini recente » Cei mai harnici utilizatori infoarena | Clasamentul arhivei de probleme | Clasament arhiva | Cei mai harnici utilizatori infoarena | Cod sursa (job #2421833)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
unsigned long long n,i,r,li,ls,z,m,nrzero;
long long NR;
int nrz(unsigned long long M)
{
long long k,nrzero;
nrzero = 0;
for(i=5;i<=M;i*=5)
nrzero+=M/i;
return nrzero;
}
int cb(unsigned long long x, unsigned long long y)
{
long long af = 0;
li = x;
ls = y;
int OK = 0;
while(li <= ls)
{
m = (li+ls)/2;
NR = nrz(m);
if(NR == n)
af = m;
if(NR < n)
li = m+1;
else
ls = m-1;
}
if(af == 0)
return -1;
else
return af;
}
int main()
{
fin >> n;
fout << cb(1,ULLONG_MAX-10);
}