Cod sursa(job #2336132)

Utilizator piciulseretan cristian piciul Data 4 februarie 2019 20:12:16
Problema Factorial Scor 20
Compilator cpp-64 Status done
Runda smenuri Marime 0.69 kb
#include<iostream>
#include<fstream>
#include<algorithm>
int min(int a, int b)
{
	if (a < b)
	{
		return a;
	}
	return  b;
}
int nrcinci(int nr)
{
	int cinci = 0;
	while (nr % 5 == 0)
	{
		cinci++;
		nr = nr / 5;
	}
	return cinci;
}
int nrdoi(int nr)
{
	int doi = 0;
	while (nr % 2 == 0)
	{
		doi++;
		nr = nr / 2;
	}
	return doi;
}

int main()
{
	int p, k, nr=0,nr5=0,nr2=0;
	std::ifstream f("fact.in");
	std::ofstream g("fact.out");
	f >> p;
	k = 0;
	while (nr < p)
	{
		k++;
		nr5 =nr5+ nrcinci(k);
		nr2 = nr2+nrdoi(k);
		nr = min(nr5, nr2);
	}
	if (nr == p)
	{
		g << k;
	}
	else
	{
		g << "-1";
	}
	f.close();
	g.close();
	

	system("pause");
}