求助,代码RE
  • 板块P1105 平台
  • 楼主Lizzycoder
  • 当前回复4
  • 已保存回复4
  • 发布时间2022/5/26 20:38
  • 上次更新2023/10/28 00:34:49
查看原帖
求助,代码RE
555073
Lizzycoder楼主2022/5/26 20:38

请问一下为什么会RE 本题我是用结构体来完成的

#include<bits/stdc++.h>
using namespace std;
int n;
struct platform
{
	int h,l,r,id;
	int ans,ans2;
} q[1005];
inline bool cmp(platform x,platform y)
{
	if(x.h == y.h)
	{
		if(x.id > y.id) 
		{
			return false;
		} 
		else 
		{
			return true;
		}
	 } 
}
inline bool cmp2(platform x,platform y)
{
	if (x.id > y.id)
	{
		return false;
	}
	return true;
}
int main()
{
	memset(q,0,sizeof(q));
	scanf("%d",&n);
	for(int i = 0;i < n;i++)
	{
		scanf("%d%d%d",&q[i].h,&q[i].l,&q[i].r);
		q[i].id = i + 1;
	}
	sort(q,q+n,cmp);
	for(int i = 0;i < n;i++)
	{
	    q[i].ans = 0;
	    for(int j = i;j < n;j++)
	    {
	    	if(q[i].l > q[j].l && q[i].l < q[j].r)
	    	{
	    		q[i].ans = q[j].id;
	    		break;
			}
			
		}
	}
	for(int i = 0;i < n;i++)
	{
	    q[i].ans2 = 0;
	    for(int j = i;j < n;j++)
	    {
			if(q[i].r < q[j].r && q[i].r > q[j].l)
			{
				q[i].ans2 = q[j].id;
				break;
			}
		}
	}
	sort(q,q+n,cmp2);
	for(int i = 0;i < n;i++)
	{
		cout<<q[i].ans<<" "<<q[i].ans2<<endl;
	}
	return 0;
}

2022/5/26 20:38
加载中...