Cod sursa(job #363322)

Utilizator Bit_MasterAlexandru-Iancu Caragicu Bit_Master Data 12 noiembrie 2009 19:23:36
Problema Factorial Scor 15
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include <fstream>
using namespace std;

ifstream in("fact.in",ifstream::in);
ofstream out("fact.out",ofstream::out);

int p;

int main()
{
	int fact, fact_supliment,exp_supliment,put,cop_fact;
	in>>p;
	if (p == 0)
	{
		out<<"1";
		return 0;
	}
	fact = 5 * p;
	put = p;
	for (fact_supliment = 25, exp_supliment = 1; exp_supliment <= p; fact_supliment *= 5, ++exp_supliment)
		put += fact/fact_supliment;
	while (put > p)
	{
		cop_fact = fact;
		while (cop_fact%5==0)
		{
			cop_fact /= 5;
			--put;
		}
		fact -= 5;
	}
	out<<fact;
	return 0;
}