#include <stdio.h>
#include <math.h>
int cal(int x)
{
return x*x + x + 41;
}
bool isPrime(int x)
{
int flag = 1;
for(int i = 2; i <= sqrt(x); i++)
{
if(x % i == 0) {
flag = 0;
break;
}
}
if(flag == 1)
return 1;
return 0;
}
int main()
{
int x, y;
int i;
while(scanf("%d%d", &x, &y)) {
if(x == 0 && y == 0)
break;
for(i = x; i <= y; i++)
if(!isPrime(cal(i)))
break;
if(i > y)
printf("OK\n");
else
printf("Sorry\n");
}
return 0;
}
总结
这里的素数判定法采取暴力尝试的思路,判断素数还有很多方法,请参考素性测试算法
https://blog.csdn.net/tigerisland45/article/details/51457540