随笔分类 - dp
摘要:我们可以把 t i , l i , r i t_i, l_i, r_i ti,li,ri 看做如图的一个等腰三角形(红色和蓝色),使用它影响的范围如上图(有颜色块的部分),可以发现,我们的目的就是运用这样的 m m m 个三角形使整个网格变成至少两个连通块。 d p [ i ] dp[i] d
阅读全文
摘要:把原序列 a a a 转换成逆序对序列 d d d, d i d_i di 表示 a i a_i ai 前有多少个数大于它。 容易知道,每个不同的 d d d 序列有且仅有一个对应的 a a a 序列。 所以我们只需要统计 d d d 序列的个数了。 d d d 序列需要满足的条件是: ∀ d
阅读全文
摘要:f [ i ] [ j ] 表 示 恰 好 有 i 行 j 列 为 黑 色 g [ i ] [ j ] 表 示 一 个 i 行 j 列 的 矩 阵 染 色 满 足 每 一 行 每 一 列 至 少 有 一 个 白 色 格 子 的 方 案 数 f[i][j] 表示恰好有 i 行 j 列为黑色 \\ g[
阅读全文
摘要:计算一个区间 [ l , r ] [l, r] [l,r] 的贡献,方法就是找到这个区间内 h h h 最小的几个点,然后从这几个点裂开计算贡献。 例如上图,我们就把整个问题的求解拆分成只考虑绿色部分的求解再利用几个绿色部分的信息整合到整体的信息。 状态: f ( p , 0 ) f (p, 0)
阅读全文
摘要:考场挂分器,送分题变成送命题。 一、状态: 令 d p [ i ] [ j ] dp[i][j] dp[i][j] 表示 [ i , j ] [i, j] [i,j] 这个区间内组成超级括号序列的方案数 令 f [ i ] [ j ] f[i][j] f[i][j] 表示在 d p [ i ] [
阅读全文
摘要:1. 前言 和刚学的 I Love Random 一个道理,所以为了巩固赶紧又来写一篇。 2.题解 这道题和 I Love Random 一个道理,考虑构造答案序列,但是这道题和 I Love Random 有一个不一样的 Hint,就是一个非常小的贪心:假设我们现在构造了一个答案序列 p, 则 p
阅读全文
摘要:原序列为 a a a,答案序列为 p p p。 令 f [ i ] [ j ] f[i][j] f[i][j] 表示构造了结果序列的前 i i i 位, p [ i ] = a [ j ] p[i] = a[j] p[i]=a[j] 的方案数。 [ L [ i ] , R [ i ] ] [L[i]
阅读全文
摘要:前言:蛤蛤蛤,我没打的atcoder的比赛都能混不少 rating A~C:咕咕咕 D: b a k [ i ] bak[i] bak[i] 表示 i i i 在 s t a c k [ b a k [ i ] ] stack[bak[i]] stack[bak[i]] 的顶部出现过(或者现在就在顶
阅读全文
摘要:1.前言 一次失败的比赛。首先为了赶时间(其实也就争取了10min左右),我尝试在出租车上打代码,下来差点吐了 q w q qwq qwq,然后车上因为晕乎乎的,把 D D D 和 F F F 的题意读错了,把 D D D 取 m a x max max 读成了求和(然后还嘲讽出题人只会出换根 d
阅读全文