社区讨论
求助大佬,不知道为啥WA了一半。
P1105平台参与者 2已保存回复 1
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 1 条
- 当前快照
- 1 份
- 快照标识符
- @lod8af31
- 此快照首次捕获于
- 2023/10/31 02:23 2 年前
- 此快照最后确认于
- 2023/11/05 12:49 2 年前
CPP
#include<bits/stdc++.h>
using namespace std;
int n;
struct platform
{
int h,l,r,index;
int lfina,rfina;//物体最终位置
} plat[1005];
bool comp1(platform x,platform y)
{
return x.index<y.index;
}
bool comp2(platform x,platform y)
{
return x.h>y.h;
}
int main()
{
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
cin>>plat[i].h>>plat[i].l>>plat[i].r;
plat[i].index=i;plat[i].lfina=0;plat[i].rfina=0;
}
sort(plat+1,plat+n+1,comp2);
for(int i=1;i<=n;i++)
for(int j=i+1;j<=n;j++)
{
if(plat[j].l<plat[i].l&&plat[j].r>plat[i].l)
{plat[i].lfina=plat[j].index;break;}
}
for(int i=1;i<=n;i++)
for(int j=i+1;j<=n;j++)
{
if(plat[j].r>plat[i].r&&plat[j].l<plat[i].r)
{plat[i].rfina=plat[j].index;break;}
}
sort(plat+1,plat+1+n,comp1);
for(int i=1;i<=n;i++)
cout<<plat[i].lfina<<" "<<plat[i].rfina<<endl;
return 0;
}
回复
共 1 条回复,欢迎继续交流。
正在加载回复...