Cod sursa(job #206179)

Utilizator tamicTamas Iulia tamic Data 5 septembrie 2008 11:23:59
Problema Fractii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <stdio.h>

FILE *fin,*fout;
typedef long long big;
big n,phi[1000001];

int main()
{
    fin=fopen("fractii.in","r");
    fout=fopen("fractii.out","w");
    fscanf(fin,"%lld",&n);
    for(big i=1;i<=n;i++) phi[i]=i-1;
    for(big i=2;i<n;i++)
    {
         big ac=i;
         while(ac+i<=n)
         {
                       ac += i;
                       phi[ac] -= phi[i];
         }
    }
    big rez=1;
    for(big i=2;i<=n;i++) rez += 2*phi[i];
    fprintf(fout,"%lld",rez);
    fclose(fin); fclose(fout);
    return 0;
}