Cod sursa(job #3328125)

Utilizator adimiclaus15Miclaus Adrian Stefan adimiclaus15 Data 6 decembrie 2025 11:50:41
Problema Factorial Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <bits/stdc++.h>
#define int long long
using namespace std;

int p;

//cate 5-uri sunt in n!

int nr5(int n) {
	int p = 5;
	int nr = 0;
	while(p <= n) {
		nr += n / p;
		p = p * 5;
	}
	return nr;
}

signed main() {
	ifstream cin("fact.in");
	ofstream cout("fact.out");
	cin >> p;
	int st = 1;
	int dr = 1e12;
	int sol = -1;
	while(st <= dr) {
		int mid = (st + dr) / 2;
		if(nr5(mid) >= p) {
			sol = mid;
			dr = mid - 1;
		} else {
			st = mid + 1;
		}
	}
	if(nr5(sol) == p) {
		cout << sol;
	} else {
		cout << -1;
	}
}