求助
  • 板块灌水区
  • 楼主MAX_CURRY_JAMES
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/9/30 21:07
  • 上次更新2024/10/1 01:05:17
查看原帖
求助
796776
MAX_CURRY_JAMES楼主2024/9/30 21:07

有N个人参加了数学、信息学考试,考试成绩都是范围在[0,1000]的正整数,如果学生A的2科成绩都比学生B的2科成绩少,A就是绝对比B差。现在每个人想知道绝对比自己差的人有多少?

输入 第一行1个正整数:N范围都在[1,100000]。

下面N行,每行2个[0,1000]的整数。第i+1行的2个数表示第i个人的数学和信息学成绩。

输出 N行,每行1个整数。第i行的数表示绝对比第i个人差的人数。 样例输入 Copy 5 0 100 200 500 100 400 300 300 400 500 样例输出 Copy 0 2 1 1 3

#include<bits/stdc++.h>
#define int long long
using namespace std;
int n,a[100005],sum;
int x[100005],y[100005];
signed main(){
	cin>>n;
	for(int i=1;i<=n;i++)
		cin>>x[i]>>y[i];
	for(int i=1;i<=n;i++){
		for(int j=i+1;j<=n;j++)
		{
			if(x[i]>x[j]&&y[i]>y[j]) a[i]++;
			else if(x[j]>x[i]&&y[j]>y[i]) a[j]++;
		}
		cout<<a[i]<<'\n';
	}
}

提交到我的网站上显示运行错误

2024/9/30 21:07
加载中...