Cod sursa(job #346895)

Utilizator mihai_r2005Richard Mihai Andrei mihai_r2005 Data 10 septembrie 2009 00:51:04
Problema Factorial Scor 15
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.46 kb
#include <iostream.h>
#include <fstream.h>

int i, p, a, b, m, vm;

int v(int i)
{
	int val = i;
	while (i > 0){
		i /= 5;
		val += i;
	}
	return val;
}

int main()
{
	ifstream fi("fact.in");
	ofstream fo("fact.out");
	fi>>p;
	a = 1;
	b = 1000000;
	while ( b - a > 1 ){
		m = ( a + b ) / 2;
		vm = v( m );
		if ( p == vm ){
			fo << m*5;
			return 0;
		}
		else if ( vm < p )
			a = m;
		else 
			b = m;
	}
	fo<<"-1";
	return 0;
}