通过了但是有疑问
查看原帖
通过了但是有疑问
591471
JRs_roadback楼主2024/10/12 23:50
#include<bits/stdc++.h>
using namespace std;
int main(){
	int n,a[1010],b[1010],c[1010],sum[1010],n1=0,n2=0;
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i]>>b[i]>>c[i];
		sum[i]=a[i]+b[i]+c[i];
	}
	for(int i=1;i<=n;i++){
		for(int j=2;j<=n;j++){
			if(abs(a[i]-a[j])<=5&&abs(b[i]-b[j])<=5&&abs(c[i]-c[j])<=5&&abs(sum[i]-sum[j])<=10)
				n1++;
		}
	}
	cout<<n1; 
	return 0;
}

代码思路是开三个数组,记录三科成绩,然后从第一个人开始,## 只与他后面的人比较

例如1跟2,3,4...比,2和3.4.5...比。

问题在第12行,这是我认为的只与后面比所写的代码,但是无法实现。样例输入后结果是5,## 然后我尝试从后往前。

即12行改成for(int j=n;j>i;j--)。想知道为什么原先那样不行,多谢大佬了

2024/10/12 23:50
加载中...