社区讨论
大佬帮看一下,80分,第一个数据tle了
P5741【深基7.例10】旗鼓相当的对手 - 加强版参与者 2已保存回复 4
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 4 条
- 当前快照
- 1 份
- 快照标识符
- @lo1ohnfs
- 此快照首次捕获于
- 2023/10/23 00:23 2 年前
- 此快照最后确认于
- 2023/11/03 01:05 2 年前
CPP
#include<bits/stdc++.h>
using namespace std;
struct we{
string s;
int a,b,c;
int d;
}a[10000];
struct sw{
int a,b;
}as[100000];//用来存放是相当对手的序号
int main(){
int w,aq=0,i,r;
cin>>w;
sw zx;
for(i=0;i<w;i++){
cin>>a[i].s>>a[i].a>>a[i].b>>a[i].c;
a[i].d=a[i].a+a[i].b+a[i].c;
}//输入
for(i=0;i<w-1;i++){
for(r=i+1;r<w;r++){
if(fabs(a[i].a-a[r].a)<=5&&fabs(a[i].b-a[r].b)<=5
&&fabs(a[i].c-a[r].c)<=5&&fabs(a[i].d-a[r].d)<=10)
{
as[aq].a=i;as[aq].b=r;aq+=1;
}}}//选择排序来判断,并将序号存入另一个结构体
aq-=1;
for(i=0;i<aq;i++){
for(r=i+1;r<=aq;r++){
if(as[i].a>as[r].a){
zx=as[i];
as[i]=as[r];
as[r]=zx;
}//用选排根据字典顺序将存放序号的结构体进行排序
if(as[i].a==as[r].a&&as[i].b>as[r].b)
{
zx=as[i];
as[i]=as[r];
as[r]=zx;
}}}
for(i=0;i<=aq;i++){
cout<<a[as[i].a].s<<" "<<a[as[i].b].s<<endl;}//输出
return 0;
}
回复
共 4 条回复,欢迎继续交流。
正在加载回复...