Cod sursa(job #1253666)

Utilizator dr_personalityEftime Andrei Horatiu dr_personality Data 1 noiembrie 2014 17:13:18
Problema Fractii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include<fstream>
using namespace std;
ifstream in("fractii.in");
ofstream out("fractii.out");

const int nmax = 1000006;
bool vprim[nmax];
long long v[nmax], n;
long long rasp;

void eratos()
{
	for(int i = 2; i<nmax; i++)
	{
		if(vprim[i]==0)
		{
			v[i] = i - 1;
			for(int j = 2 * i; j<nmax; j += i)
			{
				vprim[j] = 1;
				v[j] = (v[j] * (i - 1)) / i;
			}
		}
	}
}

int main(){
	int player_unu=0;

	for(int i = 1; i<nmax; i++)
		v[i] = i;
	eratos();

	in>>n;
	rasp = 1;
	for(int i = 2; i<=n; i++)
	{
		rasp += (long long)(2 * v[i]);
	}
	out<<rasp<<'\n';

	return player_unu;
}