社区讨论

这个代码为什么会CE

P11423 [清华集训 2024] 阿尔塔尔 2参与者 2已保存回复 2

讨论操作

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

当前回复
2 条
当前快照
1 份
快照标识符
@mhk2i778
此快照首次捕获于
2025/11/04 12:27
4 个月前
此快照最后确认于
2025/11/04 12:27
4 个月前
查看原帖
CPP
#include"altar.h"
#include <bits/stdc++.h>
using namespace std;
int altar(int n){
	set<int> ans; 
	for(int i = 1; i <= n; i++) ans.insert(i);
	while(ans.size() != 1){
		vector<int> hav;
		for(auto it = ans.begin(); it != ans.end(); it++) hav.emplace_back(*it);
		int tmp = rand() % (hav.size());
		tmp = hav[tmp];
		vector<int> del;
		for(int i = 0; i < hav.size(); i++){
			if(hav[i] == tmp) continue;
			bool num = sense(tmp,hav[i]);
			if(num) del.emplace_back(hav[i]);
		}
		for(int i = 0; i < del.size(); i++) ans.erase(del[i]);
		if(del.size() == 0) ans.erase(tmp);
	}
	return *ans.begin();
}

回复

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

正在加载回复...