Cod sursa(job #895613)

Utilizator tanduraDomnita Dan tandura Data 27 februarie 2013 11:59:39
Problema Fractii Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include <iostream>
#include <fstream>
using namespace std;

int phi[1000001];

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