HDU - 2012 素数判定 解题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDU - 2012 素数判定 解题相关的知识,希望对你有一定的参考价值。
素数判定
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 140168 Accepted Submission(s): 49576
Problem Description
对于表达式n^2+n+41,当n在(x,y)范围内取整数值时(包括x,y)(-39<=x<y<=50),判定该表达式的值是否都为素数。
Input
输入数据有多组,每组占一行,由两个整数x,y组成,当x=0,y=0时,表示输入结束,该行不做处理。
Output
对于每个给定范围内的取值,如果表达式的值都为素数,则输出"OK",否则请输出“Sorry”,每组输出占一行。
Sample Input
0 1
0 0
Sample Output
OK
这个是水题~~~
1 #include<stdio.h> 2 int main() 3 { 4 int fun(int x); 5 void fun1(int x,int y); 6 int x,y; 7 while(scanf("%d%d",&x,&y),x,y) 8 { 9 fun1(x,y); 10 } 11 return 0; 12 } 13 int fun(int x) 14 { 15 int i; 16 for(i=2;i<x/2;i++) 17 { 18 if(x%i==0) return 0; 19 } 20 return 1; 21 } 22 void fun1(int x,int y) 23 { 24 int i,n,k; 25 for(i=x;i<=y;i++) 26 { 27 n=i*i+i+41; 28 k=fun(n); 29 if(k!=1) 30 { 31 printf("Sorry\n"); 32 return; 33 } 34 } 35 printf("OK\n"); 36 }
以上是关于HDU - 2012 素数判定 解题的主要内容,如果未能解决你的问题,请参考以下文章