Cod sursa(job #1699426)
Utilizator | Coman Andrei andreicoman299 | Data | 7 mai 2016 12:02:46 |
---|---|---|---|
Problema | Fractii | Scor | 100 |
Compilator | c | Status | done |
Runda | Arhiva de probleme | Marime | 0.54 kb |
#include <stdio.h>
#include <stdlib.h>
long long euler[1000001];
int main()
{
int n, i, j;
FILE*fi,*fo;
fi=fopen("fractii.in","r");
fo=fopen("fractii.out","w");
fscanf(fi,"%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-1)/i;
long long sum=0LL;
for(i=1;i<=n;i++)
sum+=1LL*euler[i];
fprintf(fo,"%lld", 2LL*sum-1LL);
fclose(fi);
fclose(fo);
return 0;
}