70分求助,必关
  • 板块P1105 平台
  • 楼主wangyichenawm
  • 当前回复3
  • 已保存回复3
  • 发布时间2024/10/10 21:44
  • 上次更新2024/10/11 08:40:18
查看原帖
70分求助,必关
1015793
wangyichenawm楼主2024/10/10 21:44
#include<bits/stdc++.h>
#define int long long
using namespace std;
struct N
{
	int num,h,l,r,z,y;
};
N a[1005];
bool cmp(N x,N y)
{
	return x.h>y.h;
}
bool cmp1(N x,N y)
{
	return x.num<y.num;
}
int n;
signed main()
{
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i].h>>a[i].l>>a[i].r;
		a[i].num=i;
	}
	sort(a+1,a+n+1,cmp);
	for(int i=1;i<=n;i++)
	{
		a[i].z=0;
		a[i].y=0;
		for(int j=i+1;j<=n;j++)
		{
			if(a[i].z==0&&a[i].l>a[j].l&&a[i].l<a[j].r&&a[i].h>a[j].h)
				a[i].z=a[j].num;
			if(a[i].y==0&&a[i].r>a[j].l&&a[i].r<a[j].r&&a[i].h>a[j].h)
				a[i].y=a[j].num;
			if(a[i].z!=0&&a[i].y!=0)
				break;
		}
	}
	sort(a+1,a+n+1,cmp1);
	for(int i=1;i<=n;i++)
		cout<<a[i].z<<' '<<a[i].y<<"\n";
	return 0;
}

2024/10/10 21:44
加载中...