Cod sursa(job #994985)

Utilizator romircea2010FMI Trifan Mircea Mihai romircea2010 Data 6 septembrie 2013 21:18:30
Problema Fractii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <iostream>
#include <fstream>
#define NMAX 1000010

using namespace std;

int n;
long long sol;
int cnt[NMAX];

inline void Read()
{
    ifstream f ("fractii.in");
    f>>n;
    f.close();
}

inline void Solve()
{
    int i, j;
    for (i=2; i<=n; ++i)
        cnt[i] = i-1;
    for (i=2; i<=n; ++i)
        for (j=2; i*j <= n; ++j)
            cnt[i*j] -= cnt[i];

    for (i=2; i<=n; i++)
        sol += cnt[i];

    sol = sol*2+1;
}

inline void Write()
{
    ofstream g("fractii.out");
    g<<sol<<"\n";
    g.close();
}

int main()
{
    Read();
    Solve();
    Write();
    return 0;
}