#include<stdio.h>
int num[1000002]={1,1,0};
int main(){
int i,j,sum;
int k,a,b,max,min;
for(i=2;i<=500000;i++){
if(num[i]==0){
for(j=i+i;j<=1000000;j+=i){
num[j]=1;
}
}
}
for(i=2,sum=0;i<=1000000;i++){
if(num[i]==0){
sum++;
num[i]=sum;
}
}
scanf("%d",&k);
while(k--){
scanf("%d %d",&a,&b);
max=a>b?a:b;
min=a<b?a:b;
if(a==b){
if(a==0){
printf("0\n");
} else {
printf("%d",num[a]-num[a-1]);
}
} else {
printf("%d",num[max]-num[min]+1);
}
}
}
哪错了