Cod sursa(job #1741175)

Utilizator MiricaMateiMirica Matei MiricaMatei Data 13 august 2016 11:25:08
Problema Fractii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include <cstdio>
#include <cmath>
using namespace std;
const int MAXN = 1000000;
int euler[MAXN + 5];
int main(){
    freopen("fractii.in", "r", stdin);
    freopen("fractii.out", "w", stdout);
    int n, i, j;
    long long s = 0;
    scanf("%d", &n);
    for (i = 1; i <= n; i ++)
        euler[i] = i;
    for (i = 2; i <= n; i ++)
        if (euler[i] == i)
            for (j = i; j <= n; j += i)
                euler[j] -= euler[j] / i;
    for (i = 1; i <= n; i ++)
        s += euler[i];
    printf("%lld\n", 2 * s - 1);
    return 0;
}