Cod sursa(job #2003264)

Utilizator DavidLDavid Lauran DavidL Data 22 iulie 2017 15:35:15
Problema Fractii Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <cstdio>
#define LL long long
#define MAX 1000000
using namespace std;

LL phi[MAX+5];
int n;

void getPhi()
{
    for (int i=1; i<=n; i++)
        phi[i]=i-1;
    for (int i=1; i<=n; i++)
        for (int j=2*i; j<=n; j+=i)
            phi[j]-=phi[i];
}

int main()
{
    FILE *fi,*fo;
    fi=fopen("fractii.in","r");
    fo=fopen("fractii.out","w");
    fscanf(fi,"%d",&n);
    getPhi();
    LL rez=0;

    for (int numarator=1; numarator<=n; numarator++)
        rez+=phi[numarator];
    rez=rez*2+1;
    fprintf(fo,"%lld",rez);
    fclose(fi);
    fclose(fo);
    return 0;
}