Cod sursa(job #1173471)

Utilizator catalincraciunCraciun Catalin catalincraciun Data 19 aprilie 2014 19:23:41
Problema Fractii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.45 kb
// Craciun Catalin
//  Fractii
//   www.infoarena.ro/problema/fractii
#include <fstream>
#include <iostream>

#define NMax 1000005

using namespace std;

ifstream f("fractii.in");
ofstream g("fractii.out");

long n;
long phi[NMax];

int main()
{
	f>>n;
	f.close();
	
	long long s=0;

	for (int i=1;i<=n;i++)
		phi[i]=i-1;

	for (long i=2;i<=n;i++)
	{
		s+=phi[i];
		for (long j=2*i; j<=n; j+=i)
			phi[j]-=phi[i];
	}
	
	g<<2*s+1<<'\n';
	g.close();

	return 0;
}