Cod sursa(job #1024755)

Utilizator alabala1vali smerica alabala1 Data 9 noiembrie 2013 00:17:44
Problema Fractii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <fstream>
bool cmmdc(unsigned i, unsigned j)
{
	if (i && j)
		return cmmdc(j, i%j);
	return j == 1 || i == 1;
}
unsigned euleri(unsigned y, unsigned u)
{
	if (y == 1 || u == 1)
		return 1;
	return cmmdc(y, u) + euleri(y, u - 1);
}
unsigned eulerp(unsigned y, unsigned u)
{
	if (u<2)
	   return 1;
	return cmmdc(y, u) + eulerp(y, u - 2);
}
void main()
{
	unsigned n, x = 0;
	std::ifstream f("fractii.in");
	f >> n;
	f.close();
	for (unsigned i = 1; i <= n; i += 2)
		x += euleri(i, i - 1) + eulerp(i + 1, i);
	x += (x % 2) ? euleri(x, x - 1) :0;
	std::ofstream g("fractii.out");
	g << x * 2 - 1;
	g.close();
}