Cod sursa(job #1471141)
| Utilizator | Data | 13 august 2015 11:32:53 | |
|---|---|---|---|
| Problema | Fractii | Scor | 30 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.6 kb |
#include <cstdio>
#include <cstring>
#include <algorithm>
#define maxN 10000002
using namespace std;
int n, i, j, v[maxN], sol;
void read()
{
freopen("fractii.in", "r", stdin);
scanf("%d", &n);
v[1] = 1;
sol = 1;
}
void solve()
{
for (i = 2; i <= n; ++ i)
v[i] = i - 1;
for (i = 2; i <= n; ++ i)
{
sol += 2 * v[i];
for (j = i * 2; j <= n; j += i)
v[j] -= v[i];
}
}
void write()
{
freopen("fractii.out", "w", stdout);
printf("%d", sol);
}
int main()
{
read();
solve();
write();
return 0;
}
