Pagini recente » Cod sursa (job #2822839) | Cod sursa (job #2323674) | Cod sursa (job #762096) | Cod sursa (job #2549275) | Cod sursa (job #1074254)
#include <fstream>
#include <iostream>
using namespace std;
ifstream in ("fact.in");
ofstream out("fact.out");
int nr_zerouri (int a)
{
int suma = 0, p = 5;
while (p <= a)
{
suma += a / p;
p = p * 5;
}
return suma;
}
int main()
{
int n; in >> n;
int stanga = 1; int dreapta = 500000000;
if (n == 0)
{
out << 1;
return 0;
}
int middle = 0; int rasp = -1;
while (stanga <= dreapta)
{
middle = (dreapta + stanga) >> 1;
int zerouri = nr_zerouri(middle);
if (zerouri == n)
{
rasp = middle;
dreapta = middle - 1;
}
else
if (zerouri > n)
dreapta = middle - 1;
else
stanga = middle + 1;
}
out << rasp;
return 0;
}