07 2022 档案
单调队列模板
摘要:a[n + 1] = t = 0; long long area = 0; for(int i = 1; i <= n + 1; i++) { if(a[i] > s[t]) s[++t] = a[i], w[t] = 1; else { int width = 0; while(a[i] < s[
阅读全文
单调性处理问题的思想
摘要:及时排除不可能的选项,保持策略集合的高度有效性和秩序性,从而为我们做出决策提供更多的条件和可能方法。(p55)
阅读全文
邻项交换
摘要:题意为不同排序,不同选择的顺序。 我们可以列出选第 i 个然后再选第 i + 1 个的花费, 再列出先选第 i + 1 个然后再选第 i 个的花费, 通过比较可以得出sort自定义cmp的内容。
阅读全文
ST能维护的性质
摘要:总结: 其实ST表不仅能处理最大值/最小值,凡是符合结合律且可重复贡献的信息查询都可以使用ST表高效进行。什么叫可重复贡献呢?设有一个二元运算 ,满足 ,则是可重复贡献的。显然最大值、最小值、最大公因数、最小公倍数、按位或、按位与都符合这个条件。可重复贡献的意义在于,可以对两个交集不为空的区间进行信
阅读全文
ST表与二分
摘要:在1 ~ n / 2具有单调性,在n / 2 + 1 ~ n具有单调性。 在1 ~ n并不具有单调性,因此如果 l = 1, r = n + 1,将会导致答案偏大。 Interviewe 如 10 6 1 1 1 1 1 1 10 10 10 10 按理来说,分的组数越多,总和越大,比如分6组的要比
阅读全文
ST算法模板
摘要:P3865 【模板】ST 表 #include <iostream> #include <cstdio> #include <cmath> using namespace std; const int N = 1e5 + 10; int n, m; int a[N]; int f[N][20]; i
阅读全文