A1631.发工资题解:
2026-02-24 13:01:48
发布于:四川
0阅读
0回复
0点赞
A1631.发工资
#include<bits/stdc++.h>
using namespace std;
struct aox{
int id,id_b,x,d;
}a[1010];
bool cmp(aox x,aox y){
if(x.x==y.x){
if(x.d==y.d){
if(x.id_b==y.id_b){/*1、薪资从大到小排序。2、薪资相同时,按照职位等级从大到小排序。3、薪资、职位等级均相同的情况//下,按照所属部门编号从小到大排序。4、薪资、职位等级、部门均相同时,按照员工编号从小到大排序。*/
return x.id < y.id;
}else return x.id_b < y.id_b;
}else return x.d > y.d;
}else return x.x > y.x;
}
int main(){
int n;
cin >> n;
for(int i=1;i<=n;i++){
cin >> a[i].id >> a[i].x >> a[i].id_b >> a[i].d;
}
sort(a+1,a+1+n,cmp);
for(int i=1;i<=n;i++){
cout << a[i].id << " ";
}
return 0;
}
```[:ACGO_gif_大可不必]
这里空空如也






有帮助,赞一个