Cod sursa(job #2219010)

Utilizator oanceadavidOancea David oanceadavid Data 6 iulie 2018 18:56:44
Problema Fractii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include <iostream>
#include <fstream>

using namespace std;

unsigned phi[1000001];

int main() {
	ifstream f("fractii.in");
	ofstream g("fractii.out");
	unsigned i, j, n;
	f >> n;
	for (i = 1; i <= n; i++) {
		phi[i] = i;
	}
	for (i = 2; i <= n; i++) {
		if (phi[i] == i) {
			for (j = 2 * i; j <= n; j += i)
				phi[j] = phi[j] * (i - 1.0) / i;
		}
	}
	for (i = 2; i <= n; i++)
		if (phi[i] == i) {
			phi[i] = i - 1;
		}
	unsigned long long result = 0;
	for (i = 1; i <= n; i++) {
		result += phi[i];
	}
	g << 2 * result - 1;
}