Pagini recente » Cod sursa (job #932892) | Cod sursa (job #2461884) | Cod sursa (job #1724558) | Cod sursa (job #2826546) | Cod sursa (job #1809032)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
int aflare(int n)
{
int put = 5, nr = 0;
while(put <= n)
{
nr += (n / put);
put = put * 5;
}
return nr;
}
int cautbin(int p)
{
int st = 1, dr = 1000000000, rez = -1;
while(st <= dr)
{
int mid = (st + dr) / 2;
if(aflare(mid) >= p)
dr = mid - 1, rez = mid;
else
st = mid + 1;
}
return rez;
}
int main()
{
int p;
in >> p;
if(p == 0)
{
out << "1";
return 0;
}
int rasp = cautbin(p);
if(aflare(rasp) != p)
rasp = -1;
out << rasp;
return 0;
}