简单题,不过要注意input和output的格式,每个output的块之间是要有一个空行的,但是最后一个块后面不需要加空行。可以参考下面的例子:
2
10 1
Case 1: 2
20 3
Case 2: 4
30 4
Case 3: 5
0 0
10 1
Case 1: 2
20 3
Case 2: 4
30 4
Case 3: 5
0 0
Press any key to continue
代码如下:
#include<stdio.h>
int main(){
int k,N,n,m,i,num;
int a,b,flag;
while(scanf("%d",&N)!=EOF){
for(i=0;i<N;i++){
flag=0;
k=1;
while(scanf("%d%d",&n,&m)!=EOF){
if(m==0&&n==0){
flag=1;
break;
}
num=0;
for(a=1;a<n;a++)
for(b=1;b<a;b++)
if((a*a+b*b+m)%(a*b)==0)
num++;
printf("Case %d: %d\n",k++,num);
}
if(i!=N-1)
printf("\n");
if(flag==1)
continue;
}
}
return 0;
}