Cod sursa(job #2202467)

Utilizator llama27Asd asd llama27 Data 8 mai 2018 20:24:31
Problema Factorial Scor 85
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <fstream>
#include <iostream>
#include <algorithm>
#include <cmath>
#define ll unsigned long long
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
int NumberOf0(int MyNumber)
{
	int sum = 0, p = 5;
	while (MyNumber>p)
	{
		sum += (MyNumber / p);
		p *= 5;
	}
	return sum;
}
int Search(int ZeroS)
{
	int left = 0, right = ZeroS * 5, middle, MyVar;
	while (left <= right)
	{
		middle = (left + right) / 2;
		MyVar = NumberOf0(middle);
		if (MyVar < ZeroS)
			left = middle + 1;
		else
			right = middle - 1;
	}
	return left;
}
int main()
{
	int ZeroS, Value;
	in >> ZeroS;
	Value = Search(ZeroS);
	if (NumberOf0(Value) == ZeroS)
		out << Value;
	else
		out << "-1";

}