Pagini recente » Cod sursa (job #1377406) | Rating Andrei Macarescu (Andrei07) | Cod sursa (job #1255405) | Cod sursa (job #426418) | Cod sursa (job #2352987)
#include <fstream>
using namespace std;
ifstream cin("fact.in");
ofstream cout("fact.out");
int nz (int n) {
int r=0, f=5;
while (f<=n) {
r+=n/f;
f*=5;
}
return r;
}
int binarySearch(int left, int right, int p)
{
int mid, temp, k = -1;
while( left <= right )
{
mid = (left + right)/2;
temp = nz(mid);
if( temp == p ){
k = mid;
right = mid-1;
}
else if( temp > p )
right = mid -1;
else
left = mid + 1;
}
return k;
}
long long n,p;
int main() {
cin >> p;
cout << binarySearch(1, 5*p, p);
cin.close();
cout.close();
return 0;
}