Cod sursa(job #1986851)

Utilizator andrei_bicaAndrei Bica andrei_bica Data 29 mai 2017 01:10:12
Problema Factorial Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <fstream>

using namespace std;

int N;

inline int zeros(int N) {
	int result = 0;
	while (N > 0) {
		result += (N /= 5);
	}
	return result;
}

int main() {
	ifstream in("in.txt");
	ofstream out("out.txt");

	in >> N;

	int left, right, mid, last;
	left = 0; right = 5 * N; last = -1;

	while (left <= right) {
		mid = (left + right) / 2;
		if (zeros(mid) < N) {
			last = mid;
			left = mid + 1;
		} else {
			right = mid - 1;
		}
	}

	if (zeros(last + 1) == N) {
		out << last + 1 << "\n";
	} else {
		out << "-1\n";
	}
}