#include<iostream>
#include<cmath>
#include<cstdio>
#include<cstdlib>
//#define LL long long
typedef long long LL;
using namespace std;
int phi[1005];
void enlerPhi(){
memset(phi,0,sizeof(phi));
for (int i = 2 ; i <= 1003 ; i ++ ){
if( !phi[i] ){
for(int j = i ; j <= 1003 ; j += i){
if (!phi[j]){phi [j ] = j ;} //标记合数 等于一个数
phi [j] = phi [j] / i * ( i - 1 ) ;
}
}
}
}
int work(int x){
int sum=0;
for(int i=2;i<=x;i++){
sum=sum+phi[i];
}
sum=sum*2+3;
return sum;
}
int main(){
enlerPhi();
int n,x;
scanf("%d",&n);
for(int i=1;i<=n;i++){
scanf("%d",&x);
printf("%d %d %d\n",i,x,work(x));
}
return 0;
}
poj3090
最新推荐文章于 2022-02-11 20:03:26 发布