社区讨论

80pts

P11231[CSP-S 2024] 决斗参与者 3已保存回复 6

讨论操作

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

当前回复
6 条
当前快照
1 份
快照标识符
@m332bjwu
此快照首次捕获于
2024/11/04 21:34
去年
此快照最后确认于
2025/11/04 15:20
4 个月前
查看原帖
我不知道我的思路是不是错的,但是听说思路错了。
我是这样做的:先把所有的怪兽放入一个桶里面,然后按照等级从小到大遍历每一个怪兽。同时维护一个变量用来记录现在有多少怪兽是没有退出的。
CPP
#include <iostream> // 别问我为什么不用万能头。
#include <algorithm>
#include <cstring>

using namespace std;

#define MAXN 100000

long long vis[MAXN+5];


int main () {
	int n;
	cin >> n;
	for (int i = 1; i <= n; i++) {
		int a;
		cin >> a;
		vis[a]++;
	}
	long long ans = 0;
	for (int i = 2; i <= MAXN; i++) {
		if (vis[i] > ans) {
			ans = vis[i];
		} else {
			ans = vis[i] + (ans-vis[i]);
		}
	}
	cout << ans << endl;
	return 0;
}

如果思路有问题,或者代码有问题,求 hank。thx.

回复

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

正在加载回复...