Pagini recente » Cod sursa (job #1915111) | Cod sursa (job #867077) | Cod sursa (job #723041) | Cod sursa (job #2198081) | Cod sursa (job #1977401)
#include <cstdio>
const int MAX_E = 1000000;
int fi[1+MAX_E];
int main() {
int n;
FILE *fin = fopen("fractii.in", "r");
fscanf(fin, "%d", &n);
fclose(fin);
for(int i = 1; i <= n; ++i)
fi[i] = i;
for(int d = 2; d * d <= n; ++d)
if(fi[d] == d)
for(int i = d; i <= n; i = i + d)
fi[i] = fi[i] - fi[i] / d;
long long rez = 1LL;
for(int i = 2; i <= n; ++i) {
rez = rez + fi[i];
if(fi[i] == i)
--rez;
}
FILE *fout = fopen("fractii.out", "w");
fprintf(fout, "%lld", 2 * rez - 1);
fclose(fout);
return 0;
}