社区讨论

30分,样例全过,求

P1786帮贡排序参与者 3已保存回复 4

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
4 条
当前快照
1 份
快照标识符
@mhjrnzus
此快照首次捕获于
2025/11/04 07:23
4 个月前
此快照最后确认于
2025/11/04 07:23
4 个月前
查看原帖
CPP
#include <bits/stdc++.h>
using namespace std;
int n;

struct node {
	string xm;
	string zw;
	long long bg;
	long long dj;
	long long bh;
	long long zh;
};
node a[1005];

bool cmp(node x, node y) {
	return x.bg > y.bg;
}

bool cmp_tmp(node x, node y) {
	return x.zh < y.zh;
}

bool cmp_tmp1(node x, node y) {
	if (x.zh != y.zh) {
		return x.zh > y.zh;
	} else {
		return x.dj > y.dj;
	}
}

signed main() {
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	cin >> n;
	for (int i = 0; i < n; i++) {
		cin >> a[i].xm >> a[i].zw >> a[i].bg >> a[i].dj;
		a[i].bh = i + 1;
	}
	sort(a + 3, a + n, cmp);
	for (int i = 3; i < n; i++) {
		if (i < 5) {
			a[i].zw = "HuFa";
			a[i].zh = 5;
		} else if (i < 9) {
			a[i].zw = "ZhangLao";
			a[i].zh = 4;
		} else if (i < 16) {
			a[i].zw = "TangZhu";
			a[i].zh = 3;
		} else if (i < 41) {
			a[i].zw = "JingYing";
			a[i].zh = 2;
		} else {
			a[i].zw = "BangZhong";
			a[i].zh = 1;
		}
	}
//	sort(a + 3, a + n, cmp_tmp);
	sort(a + 3, a + n, cmp_tmp1);
	for (int i = 0; i < n; i++) {
		cout << a[i].xm << ' ' << a[i].zw << ' ' << a[i].dj << endl;
	}

	return 0;
}

回复

4 条回复,欢迎继续交流。

正在加载回复...