Cod sursa(job #903012)
| Utilizator | Data | 1 martie 2013 18:02:38 | |
|---|---|---|---|
| Problema | Fractii | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.47 kb |
#include <fstream>
using namespace std;
ifstream in("fractii.in");
ofstream out("fractii.out");
int phi[1000001];
int main()
{
int N; unsigned long long count = 0; in >> N;
for (int i = 1; i <= N; ++i)
phi[i] = i-1;
for (int i = 2; i <= N; ++i)
for (int j = 2*i; j <= N; j += i)
phi[j] -= phi[i];
for (int i = 2; i <= N; i++)
count += (unsigned long long)2*phi[i];
out << count+1;
return 0;
}
