Pagini recente » Cod sursa (job #1658964) | Cod sursa (job #2073116) | Cod sursa (job #726366) | Statisticile problemei Curatenie | Cod sursa (job #2263946)
#include <fstream>
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
const int MAX_SIZE = 1000000000;
int nrZero(int n){
long rez = 0, put = 5;
while(put <= n){
rez += (n / put);
put *= 5;
}
return rez;
}
int binarySearch(int value){
int left = 1, right = MAX_SIZE, middle, nr;
while(left <= right){
middle = (left + right) / 2;
nr = nrZero(middle);
if(nr < value)
left = middle + 1;
else
right = middle - 1;
}
if(nrZero(left) == value)
return left;
return -1;
}
int main()
{
int p;
in>>p;
in.close();
out<<binarySearch(p)<<"\n";
out.close();
return 0;
}