第一次暴力求解,tle
#include"stdio.h" #include"string.h" int fun(int x,int y) { while(x>y?(x%=y):(y%=x)); return x+y; } int main() { int T,n,i,j,ans,a[32768]; scanf("%d",&T); while(T--) { memset(a,0,sizeof(a)); scanf("%d",&n); ans=0; for(i=2;i<=n/2;i++) { if(n%i==0) { for(j=1;j*i<n;j++) a[i*j]=1; } } for(i=1;i<n;i++) ans+=a[i]; printf("%d\n",n-1-ans); } return 0; }