A106101.结构体排序题解
2026-03-21 19:01:33
发布于:北京
16阅读
0回复
0点赞
不是标答,但绝对是正确的
//绝对能过,谁都会
#include<bits/stdc++.h>
using namespace std;
struct buy{//结构体
int a;
int Min = 3e3;
int Max = -1;
int id;
int Add;
}d[100000];
bool cmp(buy x, buy y){//cmp排序
if(x.Add != y.Add){
return x.Add < y.Add;
}
if(x.Max != y.Max){
return x.Max < y.Max;
}
if(x.Min != y.Min){
return x.Min < y.Min;
}
return x.id < y.id;
}
int main(){
int n, k;
cin >> n >> k;
for(int i = 1; i <= n; i++){
for(int j = 1; j <= k; j++){//判断
cin >> d[j].a;
d[i].Add += d[j].a;
d[i].Max = max(d[i].Max, d[j].a);
d[i].Min = min(d[i].Min, d[j].a);
d[i].id = i;
}
}
sort(d + 1, d + n + 1, cmp);//sort排序
for(int i = 1; i <= n; i++){
cout << d[i].id << " ";//输出
}
return 0;
}
这里空空如也








有帮助,赞一个