Cod sursa(job #1241239)

Utilizator vtt271Vasile Toncu vtt271 Data 13 octombrie 2014 00:23:29
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.51 kb
#include <fstream>

using namespace std;

ifstream inFile("fact.in");
ofstream outFile("fact.out");

int nr_zeroes(long x)
{
	long i = 5, n = 0;
	while(x/i){
		n += x/i;
		i *= 5;
	}
	return n;
}

int main() 
{

	int p;

	inFile >> p;

	long st = 1, dr = 500000000; 

	while(st < dr){
		long mid = (st+dr)/2;
		if(nr_zeroes(mid) > p) dr = mid - 1;
		if(nr_zeroes(mid) < p) st = mid + 1;
		if(nr_zeroes(mid) == p) dr = mid;
	}

	if(nr_zeroes(st) == p) outFile << st;
	else outFile << -1;
}