不是很懂是啥意思。当成模板题吧
http://www.cnblogs.com/shixinzei/p/7260474.html
#include<iostream>
#include<cstdio>
#include<math.h>
#include<cstring>
#include<algorithm>
#include<queue>
#include<set>
#include<vector>
using namespace std;
int main(){
int n,t;
cin>>n;
t=n;
for(int i=2;i*i<=n;i++){
if(n%i==0){
t=t/i*(i-1);
while(n%i==0) n/=i;
}
}
if(n>1) cout<<t/n*(n-1);
else cout<<t;
return 0;
}