摩尔投票法¶
by Acc_Robin
tip
如果你觉得本文比较突兀,可以先看看原 OI-wiki 中的主元素问题
简述¶
在
详解¶
不断消去两个相邻的、不同的元素之后,剩下的一定是主元素。
需要支持的操作¶
- 栈
- 判断两元素是否相同。
可合并性¶
摩尔投票法支持合并:合并后的主元素要么不存在,要么一定是合并前两个集合主元素之一。
实现¶
1 2 3 4 5 6 7 8 |
|
应用¶
求解主元素¶
P2397:模板。
[ARC070D] HonestOrUnkind:难点通常在发现要求的是主元素,毕竟这是一个较冷门的知识点。题解
线段树维护摩尔投票¶
请注意区分主元素与众数的关系:主元素要求出现次数严格大于区间长度的一半(区间众数规约矩阵乘法)。
线段树每个节点存储一个对子
此处“可能”指的是:不是
合并时如果两区间
1 2 3 4 5 6 7 |
|
这样维护只能保证:若区间存在主元素,则
因此,应当在查询完区间
P3765 总统选举:线段树维护摩尔投票。
build本页面最近更新:,更新历史
edit发现错误?想一起完善? 在 GitHub 上编辑此页!
people本页面贡献者:AFOI-wiki
copyright本页面的全部内容在 CC BY-SA 4.0 和 SATA 协议之条款下提供,附加条款亦可能应用