Cod sursa(job #2302609)
| Utilizator | Data | 14 decembrie 2018 21:19:05 | |
|---|---|---|---|
| Problema | Fractii | Scor | 30 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.55 kb |
#include <iostream>
#include <fstream>
#define NMAX 1000001
using namespace std;
ifstream fin("fractii.in");
ofstream fout("fractii.out");
int phi[NMAX];
int n;
int main()
{
fin >> n;
int s = 0;
for (int i=1;i<=n;i++)
phi[i] = i;
for (int i=2;i<=n;i++)
{
if (phi[i] == i)
for (int j=i;j<=n;j+=i)
{
phi[j] = phi[j] / i;
phi[j] = phi[j] * (i-1);
}
}
for (int i=2;i<=n;++i)
s+=phi[i];
fout << 1 + 2 * s;
return 0;
}
