P1786帮贡排序只过样例
  • 板块学术版
  • 楼主_8008008
  • 当前回复0
  • 已保存回复0
  • 发布时间2023/5/20 08:57
  • 上次更新2023/10/23 15:18:49
查看原帖
P1786帮贡排序只过样例
803885
_8008008楼主2023/5/20 08:57
#include<bits/stdc++.h>
using namespace std;
struct s{
	string name,zhiwei;
	int banggong,dengji,bh;
};
int tmp(s a,s b){
	if(b.banggong<a.banggong)return 1;
	else if(b.banggong==a.banggong)return a.bh<b.bh;
	else return 0;
}
int tsp(s a,s b){
	if(a.zhiwei==b.zhiwei)
	if(a.dengji==b.dengji)return a.bh<b.bh;
	else return b.dengji<a.dengji;
}
int main(){
	int n;s a[10000];
	cin>>n;
	for(int i=0;i<n;i++){
		cin>>a[i].name>>a[i].zhiwei>>a[i].banggong>>a[i].dengji;
		a[i].bh=i;
	}
	sort(a+3,a+n,tmp);
	for(int i=3;i<5&&i<n;i++)a[i].zhiwei="HuFa";
	for(int i=5;i<9&&i<n;i++)a[i].zhiwei="ZhangLao";
	for(int i=9;i<16&&i<n;i++)a[i].zhiwei="TangZhu";
	for(int i=16;i<41&&i<n;i++)a[i].zhiwei="JingYing";
	for(int i=41;i<n;i++)a[i].zhiwei="BangZhong";
	sort(a+3,a+n,tsp);
	for(int i=0;i<n;i++){
		cout<<a[i].name<<" "<<a[i].zhiwei<<" "<<a[i].dengji<<endl;
	}
	return 0;
}
2023/5/20 08:57
加载中...