http://acm.hdu.edu.cn/showproblem.php?pid=1017
这道题真蛋疼,读题读的我晕乎乎的~~题目大意是
先输入一个数N然后会分N块输入,每块每次输入2个数,n,m,n=m=0时结束,当a和b满足0<a<b<n且使(a^2+b^2 +m)/(ab) 的值为整数时,那么这对a和b就是一组,输出这样的组数,一行输入,跟着一样输出。
要注意各种空格~~
#include<iostream>
using namespace std;
int main(){
int n,m,cont=0,num=0;
int T;
cin>>T;
while(T--)
{
while(cin>>n>>m&&n!=0) //之前我这里错了,误加上m!=0了~~其实对第二个数字没啥要求
{
int a,b;
for(a=1;a<100;++a){
for(b=a+1;b<n;++b){
if((a*a+b*b+m)%(a*b)==0)
cont++;
}
}
cout<<"Case "<<++num<<": "<<cont<<endl;
cont=0;
}
num=0;
if(T)
cout<<endl;
}
}
以后做题目一要细心二要弄明白题意~~加油