09 2020 档案
摘要:题目大意 动态维护数列中大于等于某个数的极长连续段的个数。 思路 我们考虑每段的开头,记为 ,高度为 那么此时水淹的高度必然满足 这样的 在此处会给答案贡献加一 那么我们考虑所有的这种位置,开一棵权值线段树,对于
阅读全文
摘要:解析 首先我们得明确:分割的顺序是无所谓的 不然我们很难列出转移方程 那为什么呢? 假若当前我们把某段序列分成三段,依次记为 ,每段和记为 那么如果我们先分出 ,那么 \(ans = s_x \times (s_y+s_z)
阅读全文
摘要:解析 预算费用,和Luogu P2365 任务安排一样 得到了同样的式子 但是我们发现 可能小于零 也就是说我们需要的斜率可能不再具有单调性 所以我们要维护整个凸壳 那么怎么找到最佳的决策点呢? 其实就是 且 \(slope(
阅读全文
摘要:题目 思路 呵呵,正解并不是什么神奇的方法 而是最原始的最粗暴的最有用的最万能的————搜索 依题模拟即可 #include<cstdio> #include<cstring> using namespace std; const int N = 35; int n , m , m
阅读全文
摘要:题目大意 没什么,就是把原本汉诺塔的三根柱子改成四根,求最少步数 其中 思路 设 表示四根柱子中把其中一根 个移到另一根的最小步数 类似,改成三根柱子 那么 \(f_i = \min(g_j * 2 + f_{
阅读全文
摘要:[SHOI2006]仙人掌 简要解析 其实很简单 只要普通树形 就行了 表示 能向下延深的最大距离, 是 的儿子 当一个点不属于任何环时 这是更新 \(ans = \max(ans , f
阅读全文
摘要:题面 思路 考场想到 缩点 然而忘了缩点怎么打 于是甩了个暴力 改题时学了个圆方树 发现挺好用 于是······注意重边 #include<cstdio> #include<iostream> #include<cmath> #include<map> usi
阅读全文