Pagini recente » Cod sursa (job #1183710) | Cod sursa (job #195312) | Cod sursa (job #619358) | Cod sursa (job #2585921) | Cod sursa (job #2436294)
#include <bits/stdc++.h>
#define N 1000000000
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
long long nrz(long long n)
{
if(n==0) return 1;
long long s=0;
for(long long i=5;n/i>=1;i*=5)
s+=n/i;
return s;
}
long long binarysearch(long long p)
{
long long low=0,hi=N,m;
while(low<=hi)
{
m=(low+hi)/2;
long long z=nrz(m);
if(z==p)
{
long long x=m-1;
while(nrz(x)==z)
x--;
return x+1;
}
else
if(z<p)
low=m+1;
else
hi=m-1;
}
return -1;
}
int main() {
long long p;
in>>p;
out<<binarysearch(p);
}