Cod sursa(job #1832930)

Utilizator cyprcCristea Ciprian - Raul cyprc Data 21 decembrie 2016 11:24:50
Problema Factorial Scor 15
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
//Se da un numar intreg P. Sa se gaseasca cel mai mic numar natural strict pozitiv N pentru care N! are exact P cifre de 0 la sfarsit.
#include<fstream>

void generare(int a, int b[], int dim)
{
	b[0] = 1;
	for (int i = 1; i < 11; i++)
		b[i] = b[i - 1] * a;
}

int cout5(int a, int tab[])
{
	for (int i = 10; i >= 1; i--)
	{
		if (a%tab[i] == 0) 
			return i;
	}
	return 0;
}

int main()
{
	int tab5[11];

	generare(5, tab5, 11);
	generare(5, tab5, 24);
	std::ifstream f("fact.in");
	std::ofstream g("fact.out");
	int p;
	f >> p;
	int p5 = 0;

	if (p == 0) g << 1;
	else
	{
		int i;
		for (i = 5; p5 < p; i += 5)
		{
			p5 += cout5(i,tab5);
		}
		g << i-5;
	}
	f.close();
	g.close();
	return 0;
}