Cod sursa(job #2197150)
Utilizator | Alex Ben alex_benescu | Data | 21 aprilie 2018 11:40:02 |
---|---|---|---|
Problema | Sum | Scor | 0 |
Compilator | c | Status | done |
Runda | Arhiva de probleme | Marime | 0.5 kb |
#include <stdio.h>
#define VM 100100
int e[VM];
int main(){
FILE *fin, *fout;
int n, x, i, j;
long long s;
fin=fopen("sum.in", "r");
fscanf(fin, "%d", &n);
fout=fopen("sum.out", "w");
for(i=2; i<=VM; i++)
e[i]=i;
for(i=2; i<=VM; i++)
if(e[i]==i)
for(j=i; j<=VM; j+=i)
e[j]=e[j]/i*(i-1);
for(i=0; i<n; i++){
fscanf(fin, "%d", x);
s=2LL*e[x]*x;
fprintf(fout, "%lld\n", s);
}
fclose(fin);
fclose(fout);
return 0;
}