Pagini recente » Cod sursa (job #1503353) | Cod sursa (job #753080) | Cod sursa (job #2720531) | Cod sursa (job #2064583) | Cod sursa (job #2077899)
#include <iostream>
#include <algorithm>
#include <fstream>
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
long long n;
long long nr_0(long long n){
long long nr_0uri=0;
long long i=5;
while(n/i>0){
nr_0uri+=n/i;
i*=5;
}
return nr_0uri;
}
void bsearch0 (long long st, long long dr, long long x) {
long long m=st+(dr-st)/2;
while (nr_0(m)!=x && st < dr) {
m = st +( dr-st) / 2;
if (nr_0(m) < x)
st = m+1;
else
dr = m-1;
}
if (nr_0(m) > x) m --;
while (nr_0(m-1) == x)m--;
if(nr_0(m)==x) out<<m;
else out<< -1;
}
int main()
{in>>n;
if(n==0)out<<1;
else bsearch0(1,100000000,n);
return 0;
}