- \(shuffle(\ begin,\ end,\ 随机数函数\ )\) (打乱数组)
- \(nth\_element()\) (第 \(k\) 小元素)
- \(fill\) (填充数组)
- \(bitset\):
\(bitset()\) 初始化每一位都是 \(false\)。
\(bitset(val)\) 初始化为 \(val\) 的二进制形式 。
\(bitset(string)\) 初始化为 01 串 \(string\)。
\(count()\) 返回 \(true\) 的数量。
\(bitset<size>\ 变量名\) a定义。
- \(k\) 叉哈夫曼树:补零,补成完全 \(k\) 叉树。
- 贪心:一种方法是考虑答案的上/下界,然后考虑是否可以达到上/下界与特殊情况。
lainxiangjiaohuan数组)
- \(nth\_element()\) (第 \(k\) 小元素)
- \(fill\) (填充数组)
- \(bitset\):
\(bitset()\) 初始化每一位都是 \(false\)。
\(bitset(val)\) 初始化为 \(val\) 的二进制形式 。
\(bitset(string)\) 初始化为 \(01\) 串 \(string\)。
\(count()\) 返回 \(true\) 的数量。
\(bitset<size>\ 变量名\) a定义。
- \(k\) 叉哈夫曼树:补零,补成完全 \(k\) 叉树。(合并果子)
- 贪心:
考虑答案的上/下界,然后考虑是否可以达到上/下界与特殊情况。
邻项交换:交换相邻两个数,与交换之前比较。
反悔贪心,对于之前的决策,用堆等数据结构维护最值,与当前比较,并重新决策。
检查贪心正确性:构造反例或与暴力对拍。
- 前缀和/差分:注意 \(0\) 和 \(n+1\) 这两个位置。
- 对于中位数/平均数的处理方法:
中位数:将大于中位数的数设置成 \(1\),反之设置成 \(-1/0\)
平均数:将所有数减去平均数。
- 处理线段是可以将线段的左右端点拆出来分别看。加法
- 一种贪心的思路是数放入堆中,取出堆头,然后将堆头拆成多个数再重新放入堆。[NOI2010] 超级钢琴
posted @
2025-07-17 10:05
Optimist_Skm
阅读(
6)
评论()
收藏
举报