Pagini recente » Cod sursa (job #1761579) | Cod sursa (job #1711898) | Cod sursa (job #885936) | Cod sursa (job #1266331) | Cod sursa (job #1520358)
#include <bits/stdc++.h>
using namespace std;
int m, pr[500], l[500];
bool viz[1200];
void primes() {
for(int i = 2; i <= 1100; i ++)
if(!viz[i]) {
m ++;
pr[m] = i;
int lim = 1100 / i;
for(int j = 2; j <= lim; j ++)
viz[i * j] = true;
}
}
int main()
{
primes();
freopen("fractii.in", "r", stdin);
freopen("fractii.out", "w", stdout);
int n;
cin >> n;
long long ret = 0;
for(int i = 1; i <= n; i ++) {
int j = 1, aux = i, s = i;
while(pr[j] <= aux) {
if(aux % pr[j] == 0) {
while(aux % pr[j] == 0)
aux /= pr[j];
s -= s / pr[j];
}
j ++;
}
ret += s;
}
cout << (ret << 1) - 1 << "\n";
return 0;
}