Pagini recente » Cod sursa (job #1602285) | Cod sursa (job #1181451) | Cod sursa (job #2285153) | Cod sursa (job #1544227) | Cod sursa (job #936170)
Cod sursa(job #936170)
// x1 , x2 , ... , xa - numerele prime cu n mai mici decat n ;
// x1+n , x2+n , ... , xa+n - numerele prime cu n mai mari decat n si mai mici decat 2*n ;
// S1 = x1 + x2 + ... + xa = phi(n) *n / 2 ;
// S2 = x1 + n + x2 + n + ... + xa + n = n * phi(n) + S1 ;
// SOL = S1 + S2 = 2 *n * phi(n) ;
#include<cstdio>
using namespace std;
int i,j,phi[100005],t,x;
int main()
{
freopen("sum.in","r",stdin);
freopen("sum.out","w",stdout);
for(i=2;i<=100000;i++) phi[i]=i;
for(i=2;i<=100000;i++)
if(phi[i]==i)
for(j=i;j<=100000;j+=i) phi[j]=phi[j]/i*(i-1);
scanf("%d",&t);
for(;t;t--)
{
scanf("%d",&x);
printf("%lld\n",2LL*x*phi[x]);
}
return 0;
}