题解 P5728 【【深基5.例5】旗鼓相当的对手】
这道题挺水的,暴力枚举就过了。1000²=1000000所以不会超时。我是用结构体做的,直接开数组也可以。下面是代码:
#include<iostream>
#include<cmath>//我用的abs函数,abs就是求绝对值的函数。它的头文件是cmath。
using namespace std;
int n,ans=0;
struct p{//结构体
int a,b,c;
}q[1010];//分号别忘了!
int main(){
cin>>n;
for(int i=1;i<=n;i++){//输入
cin>>q[i].a>>q[i].b>>q[i].c;
}
for(int i=1;i<n;i++){
for(int j=i+1;j<=n;j++){//这样不会重复计算,自己举个例子好好想想。
if(abs(q[i].a-q[j].a)<=5/*利用abs函数*/&&abs(q[i].b-q[j].b)<=5&&abs(q[i].c-q[j].c)<=5&&
abs(q[i].a+q[i].b+q[i].c-(q[j].a+q[j].b+q[j].c))<=10){
ans++;//答案+1
}
}
}
cout<<ans<<endl;//输出
return 0;//拜拜!
}