思路:数据很小,循环遍历即可,重点倒是在如何判断整数上纠结了一会儿。
附代码:
#include <iostream>
using namespace std;
int count(int n,int m);
int main(){
int N,n,m,result;
cin>>N;
while(N){
int i = 1;
while(cin>>n>>m&&(n||m)){
result = 0;
result = count(n,m);
cout<<"Case "<<i++<<": "<<result<<endl;
}
N--;
if(N!=0)
cout<<endl;
}
}
int count(int n,int m){
int a,b,result;
result = 0;
for(a=1;a<n-1;a++){
for(b=a+1;b<n;b++){
if((a*a+b*b+m)%(a*b)==0)
result++;
}
}
return result;
}