思路:
套个欧拉函数的公式就能得到N之前有多少个数与N互质。
跟poj 2407 一样的模板题。
给出我之前的题解。
http://blog.csdn.net/wing_wuchen/article/details/52044622
AC代码:
#include <iostream>
#include <cstdio>
using namespace std;
int Eular(int n){
int ans = n;
for(int i = 2;i <= n;i++){
if(n%i == 0){
ans = ans - ans / i;
}
while(n%i == 0){
n /= i;
}
}
return ans;}
int main()
{
int t;
cin>>t;
int n;
while(t--){
scanf("%d",&n);
printf("%d\n",Eular(n));
}
return 0;
}