Cod sursa(job #2842874)

Utilizator AlexandruPaulSirbu Alex AlexandruPaul Data 1 februarie 2022 17:36:38
Problema Factorial Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.48 kb
#include <iostream>
using namespace std;
int p,m=0,n=-1;
int f(int x)
{
	int nr = 0, pwr = 5;
	while(x>=pwr)
	{
		nr += x / pwr;
		pwr *= 5;
	}
	return nr;
}
int main()
{
	ifstream k("fact.in");
	ofstream g("fact.out");
	int p;
	k >> p;
	int st = 1;
	int dr = 2000000;
	int m = 0, n = -1;
	while (st <= dr)
	{

		m = (st + dr) / 2;
		
		if (f(m) == p) {
			n = m;
				dr = m - 1;
		}else if (f(m) < p) {
			st = m + 1;
		}else dr = m - 1;
	}
	g << n;

}