Cod sursa(job #158273)

Utilizator dominoMircea Pasoi domino Data 13 martie 2008 16:08:17
Problema Fractii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <fstream>   
  
using namespace std;   
  
#define N_MAX 1000001   
#define FIN "fractii.in"   
#define FOUT "fractii.out"   

int phi[N_MAX],n;   
  
int main()   
{   
    int k,i,j;
	long long s = 1;   
    
	ifstream fin(FIN);   
    ofstream fout(FOUT);   
  
    fin >> n;   
       
    //calculate phi function
    for(i = 1; i <= n; ++i)   
        phi[i] = i-1;   
       
    for(i = 2; i <= n; ++i)   
        for(j = 2 * i; j <= n; j+= i)   
            phi[j] -= phi[i];   
       
    for(k = 2; k <= n; ++k)   
        s += 2 * phi[k];   
  
    fout << s << endl;
       
    return 0;   
}