Cod sursa(job #895510)

Utilizator tanduraDomnita Dan tandura Data 27 februarie 2013 11:39:15
Problema Fractii Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 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=1;i<=n;i++)
        phi[i]=i;
    for (i=2;i<=n;i++)
        if (phi[i]==i)
           for (j=i;j<=n;j+=i)
                {
                    phi[j]/=i;
                    phi[j]*=(i-1);
                }
    for(i=2;i<=n;i++)
        if(phi[i]==i)
          phi[i]--;
    sum=0;
    for(i=2;i<=n;i++)
        sum+=phi[i];
    sum*=2;
    sum++;
    ofstream g("fractii.out");
    g<<sum<<"\n";
    f.close();
    g.close();
    return 0;
}