Cod sursa(job #2313205)

Utilizator Dorin_Cosmin99Dorin Cosmin Dorin_Cosmin99 Data 6 ianuarie 2019 13:15:07
Problema Factorial Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.53 kb
#include <fstream>
#include <iostream>
#include <algorithm>
using namespace std;
ifstream f("fact.in"); ///kruskal
ofstream g("fact.out");
int p, c, k;
int cb(int p) { /// cel mai mic nr nat n pt care n! are exact p cifre de 0
	int s = 1, d = 1000000000, m, pos = -1, k5, c;
	while (s <= d) {
		m = s + (d - s) / 2;
		c = 5, k5 = 0; while (c <= m) k5 += m / c, c *= 5;
		if (k5 == p) pos = m, d = m - 1;
		else if (k5 > p) d = m - 1;
		else s = m + 1;
	}
	return pos;
}

int main()
{
	f >> p;
	g << cb(p);
	return 0;
}