Cod sursa(job #1237313)
Utilizator | Apopei Daniel apopeid15 | Data | 3 octombrie 2014 20:00:51 |
---|---|---|---|
Problema | Sum | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.5 kb |
#include <cstdio>
using namespace std;
FILE *f=fopen ("sum.in","r");
FILE *g=fopen ("sum.out","w");
int phi[100005];
int main(){
int n,x;
for (int i=1;i<=100000;++i)
phi[i]=i-1;
for (int i=2;i<=100000;++i){
for (int j=i+i;j<=100000;j+=i){
phi[j]-=phi[i];
}
}
fscanf (f,"%d",&n);
for (int i=1;i<=n;++i){
fscanf (f,"%d",&x);
fprintf (g,"%lld\n",1LL*2*phi[x]*x);
}
return 0;
}