Pagini recente » Monitorul de evaluare | Cod sursa (job #3005364) | Cod sursa (job #1411546) | Cod sursa (job #2531355) | Cod sursa (job #1076089)
#include <fstream>
using namespace std;
ifstream f ("fact.in");
ofstream g("fact.out");
int n,p,i;
int MAX = 100000000;
int zero(int x)
{
int suma = 0;
while (x)
{
suma += x/5;
x /= 5;
}
return suma;
}
int caut_binar(int st, int p, int dr)
{
int m = (st+dr) / 2, k = -1;
while (st <= dr)
{
if (zero(m) == p)
{
k = m;
dr = m - 1;
}
if (zero(m) < p) st = m + 1;
else dr = m - 1;
m = (st+dr) / 2;
}
return k;
}
int main ()
{
f >> p;
n = caut_binar(1,p,MAX);
g << n;
f.close();
g.close();
return 0;
}