Pagini recente » Cod sursa (job #1099305) | Cod sursa (job #1097329) | Cod sursa (job #407334) | Cod sursa (job #1926257) | Cod sursa (job #953474)
Cod sursa(job #953474)
#include <fstream>
#define In "fact.in"
#define Out "fact.out"
using namespace std;
long k;
inline int F(int x)
{
int m, s;
for(m = 5,s = 0 ;m <= x;s += x/m,m *= 5);
return s;
}
inline int Binary_Search(int left,int right)
{
int middle, x;
while(left <= right)
{
middle = (left + right) >>1;
x = F(middle);
if(x==k)
return middle;
if(x<k)
left = middle + 1;
else
right = middle -1;
}
return 0;
}
int main()
{
ifstream f(In);
f>>k;
f.close();
ofstream g(Out);
if(k==0)
k = 1;
else
{
k = Binary_Search(1,1000000000);
k -= k%5;
if(!k)
k = -1;
}
g<<k<<"\n";
g.close();
return 0;
}