将所有所求范围内的素数进行打表如果不是素数让他等于1如果是让他等于0
#include<cstdio> int a[3000]={1,1,0};//素数表的初始化 int main(){ int x,y; for(int i=2;i<3000;i++){//进行素数打表 if(a[i]) continue ;//如果这个数已经被筛选过就不需要他的倍数肯定一被筛选过 for(int j=2*i;j<3000;j+=i){//如果一个素数他的倍数一定是素数 a[j]=1; } } while(~scanf("%d%d",&x,&y)){ if(x==0&&y==0) break ; int t=1; for(int i=x;i<=y;i++){ if(a[i*i+41+i]) t=0; }//查找判断是否为素数 if(t) printf("OK\n"); else printf("Sorry\n"); } return 0; }