这是北信夏令营原题B题,难怪ACMER都可以飞速AC掉,他们做的都是已经做过的题,能不快吗?直接贴考试时的代码了 #include <stdio.h> int n,a[102]={0},i,j,changdu,count=0,jiange; void main(){ scanf("%d",&n); while(n--){ scanf("%d",&changdu); for(i=1;i<=changdu;i++){ a[i] = 0; } //不用第一位,只用数组中的1-100号元素 for(i=1;i<=changdu;i++){ for(j=i;j<=changdu;) { if(a[j] == 0) a[j] = 1; else a[j] = 0; j= j+i; } } for(i=1;i<=changdu;i++){ if(a[i] == 1){ count++; } } printf("%d/n",count); for(i=1;i<=changdu;i++){ a[i] = 0; } count =0; } }