Cod sursa(job #1196588)

Utilizator alexinulstana alexandru alexinul Data 8 iunie 2014 14:52:41
Problema Fractii Scor 100
Compilator c Status done
Runda Arhiva de probleme Marime 0.55 kb
#include <stdio.h>
#include <stdlib.h>
#define MAX 1000005
int main()
{
    FILE *in,*out;
    in=fopen("fractii.in","r");
    out=fopen("fractii.out","w");
    int n=0,i,j,phi[MAX];
    unsigned long long int sum=0;
    for(i=0;i<MAX;i++)
        phi[i]=0;
    fscanf(in,"%d",&n);
    for(i=1;i<=n;i++)
        phi[i]=i-1;
    for(i=1;i<=n/2;i++)
        for(j=2;i*j<=n;j++)
            phi[i*j]-=phi[i];
    for(i=0;i<=n;i++)
        sum+=2*phi[i];
    sum++;
    fprintf(out,"%llu",sum);
    fclose(in);
    fclose(out);
    return 0;
}