HDu 2012素数判定
860 ワード
素数判定
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 20702 Accepted Submission(s): 6958
Problem Description
式n^2+n+41の場合、nが(x,y)の範囲内で整数値をとる場合(x,yを含む)(-39<=x
Input
入力データには複数のグループがあり、各グループが1行を占め、2つの整数x,yからなり、x=0,y=0の場合、入力が終了したことを示し、その行は処理されない.
Output
各指定範囲の値について、式の値が素数の場合は「OK」を出力し、そうでない場合は「Sorry」を出力し、各グループの出力が1行を占めます.
Sample Input
0 1 0 0
Sample Output
OK
#include #include int main() { int x,y,i,t,j,count=0; double k; while(scanf("%d %d",&x,&y)&&(x||y)!=0) { for(i=x;i<=y;i++) { t=i*i+i+41; k=sqrt((double)t); for(j=2;j<=k;j++) { if(t%j==0) { count++; break; } } } if(count==0) printf("OK/n"); else printf("Sorry/n"); count=0; } return 1;
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 20702 Accepted Submission(s): 6958
Problem Description
式n^2+n+41の場合、nが(x,y)の範囲内で整数値をとる場合(x,yを含む)(-39<=x
Input
入力データには複数のグループがあり、各グループが1行を占め、2つの整数x,yからなり、x=0,y=0の場合、入力が終了したことを示し、その行は処理されない.
Output
各指定範囲の値について、式の値が素数の場合は「OK」を出力し、そうでない場合は「Sorry」を出力し、各グループの出力が1行を占めます.
Sample Input
0 1 0 0
Sample Output
OK
#include #include int main() { int x,y,i,t,j,count=0; double k; while(scanf("%d %d",&x,&y)&&(x||y)!=0) { for(i=x;i<=y;i++) { t=i*i+i+41; k=sqrt((double)t); for(j=2;j<=k;j++) { if(t%j==0) { count++; break; } } } if(count==0) printf("OK/n"); else printf("Sorry/n"); count=0; } return 1;