Cod sursa(job #1708512)
| Utilizator | Data | 27 mai 2016 11:06:27 | |
|---|---|---|---|
| Problema | Sum | Scor | 70 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.5 kb |
#include <stdio.h>
#include <stdlib.h>
int v[100006];
int main(){
int n, x;
FILE*fi,*fo;
fi=fopen("sum.in","r");
fo=fopen("sum.out","w");
fscanf(fi,"%d", &n);
for(int i=1;i<=100005;i++)
v[i]=i-1;
for(int i=2;i<=100005;i++)
for(int j=2;i*j<=100005;j++)
v[i*j]-=v[i];
for(int i=0;i<n;i++){
int x;
fscanf(fi,"%d", &x);
fprintf(fo,"%d\n", 2*x*v[x]);
}
fclose(fi);
fclose(fo);
return 0;
}
