Cod sursa(job #305300)

Utilizator iuly2freemanVasiliev Iulian iuly2freeman Data 16 aprilie 2009 21:32:37
Problema Fractii Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
#define NMAX 1024000

#include <fstream>

using namespace std;

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

int a[NMAX], n;

long long int sol;

int main()
{
	fin >> n;
	
	sol = 1;
	  
	for (int i = 2; i <= n ; ++i) a[i] = i;  
 
	for (int i = 2; i <= n / 2; ++i)  
  		if (a[i] == i)  
    		for (int j = 2; j <= (n / i); ++j) a[i*j] = (a[i*j] * (i - 1)) / i;  
 	for (int i = 1; i<= n; ++i)  
  		if (a[i] == i) sol += (i - 1) * 2;  
  		else sol += a[i] * 2;
  
  	fout << sol;  
	
	fin.close();
	fout.close();
	
	return 0;
}