Cod sursa(job #745326)

Utilizator SzakatsSzakats Istvan Szakats Data 11 mai 2012 01:30:28
Problema Factorial Scor 25
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <stdio.h>
#include <fstream>
#include <iostream>

using namespace std;

int get_nr(int r)
{
	int f = 0;
	while(r) {
		r /= 5;
		f += r;
	}

	return f;
}

int main()
{
	ifstream fin("fact.in");
	ofstream fout("fact.out");
	//ostream &fout = cout;

	int n;
	fin >> n;

	if(n == 0) { fout << 1 << endl; return 0; }

	int lo = 0, hi = 100000;
	while(lo < hi) {
		int med = lo + (hi - lo) /2;
		if(get_nr(med) >= n)
			hi = med;
		else
			lo = med + 1;
	}

	if(get_nr(lo) == n) 
		fout << lo << endl;
	else
		fout << -1 << endl;

	return 0;
}