根据埃氏筛法找素数改编的
#include<stdio.h>
#include<string.h>
#include<time.h>
int num[1000010];
int main(){
int n,m,i,j,t,k;
long stra,end;
while(~scanf("%d%d",&n,&m)){
stra=clock();
for(i=1;i<=m;i++){
num[i]=1;
}
for(i=2;i<=m;i++){
if(num[i]){
k=i;
for(t=0,j=1;j<=m;j++){
if(num[j]) t++;
if(k==t){
num[j]=0;
t=0;
}
}
}
}
for(t=0,i=n+1;i<m;i++){
if(num[i]) t++;
}
printf("%d\n",t);
end=clock();
printf("%lf\n",(end-stra)/1000.0);//时间
}
return 0;
}