Pagini recente » Cod sursa (job #2204477) | Cod sursa (job #1702097) | Cod sursa (job #1418958) | Cod sursa (job #1091887) | Cod sursa (job #1268681)
// FMI - Grupa 135 - Semigrupa 2 - Hareza Andrei
// Include
#include <fstream>
using namespace std;
// Functii
int binarySearch(int left, int right);
bool good(int num);
// Variabile
ifstream in("fact.in");
ofstream out("fact.out");
int num, digits;
// Main
int main()
{
in >> digits;
if(!digits)
{
out << 1;
in.close();
out.close();
return 0;
}
num = binarySearch(1, (int)1e9);
num -= num%5;
out << num << '\n';
in.close();
out.close();
return 0;
}
int binarySearch(int left, int right)
{
if(left == right)
return left;
int mid = (left + right) / 2;
if(good(mid))
return binarySearch(left, mid);
else
return binarySearch(mid+1, right);
}
bool good(int num)
{
int power = 0, div = 5;
while(num/div)
{
power += num/div;
div *= 5;
}
return power>=digits;
}