Cod sursa(job #3219117)
Utilizator | Pal-Serban Natalia nata.03 | Data | 30 martie 2024 10:06:11 |
---|---|---|---|
Problema | Fractii | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.54 kb |
#include <iostream>
#include <fstream>
#define NMAX 1000006
using namespace std;
ifstream f("fractii.in");
ofstream g("fractii.out");
long long fi[NMAX];
int main()
{
long long N, suma=0;
f >> N;
for (int i = 1; i < NMAX; ++i)
fi[i] = i;
for (int i = 2; i < NMAX; ++i)
if (fi[i] == i)
for (int j = i; j < NMAX; j += i)
fi[j] = fi[j] / i * (i - 1);
for (int i=2; i<=N; i++)
{
suma+=fi[i];
}
suma=suma*2+1;
g << suma;
return 0;
}