Cod sursa(job #2433405)

Utilizator CostiVVoicu Costi CostiV Data 27 iunie 2019 11:42:23
Problema Fractii Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <fstream>
#include <math.h>
using namespace std;

int main() {
	ifstream fin("fractii.in");
	ofstream fout("fractii.out");

	int N, P, Q, d, x=1,P1,p = 0, nr = 0;
	fin >> N;
	nr = N;
	for (P = 2; P <= N; ++P) {
		P1 = P;
		for (d = 2; P1 > 1; ++d) {
			if (P1 % d == 0) {
				p = 0;
				x = 1;
				while (P1 % d == 0) {
					P1 /= d;
					++p;
				}
				x *= (d - 1) * pow(d, p - 1);
			}
			if (P1 > 1 && d * d > 1) {
				x *= (P1 - 1);
				P1 = 1;
			}
		}
		nr += x;
	}
	P = 2;
	while (P < N) {
		Q = N;
		while (Q > P) {
			if (Q % P != 0)
				++nr;
			--Q;
		}
		++P;
	}
	fout << nr;
	return 0;
}