摘要: 这个其实是一个树形的 LIS。 我们考虑到 multiset 怎么维护一个序列,然后扩展到树上,这样就可以了。 怎么维护一个序列呢? 我们考虑 $s.size()$ 是当前的 LIS 长度,然后我们插入一个数,要么比最大的要大,比最大的要大直接丢进去,这样长度显然也是+1。 如果比最大的要小?那么我 阅读全文
posted @ 2020-03-29 23:08 _Isaunoya 阅读(132) 评论(0) 推荐(0) 编辑
摘要: ~~草,不会做啊不会做啊不会做啊……~~ 题意: 维护一个长度为n的正整数序列a_1,a_2,...,a_n,支持以下两种操作: 1 k,将序列a从小到大排序,输出a_k的值。 2 k,将所有严格大于k的数a_i减去k。 sol: 平衡树,大家都会,减掉 $k$ 后,相对位置发生改变的,只有 $[1 阅读全文
posted @ 2020-03-29 22:36 _Isaunoya 阅读(766) 评论(1) 推荐(0) 编辑
摘要: 身体是革命的本钱,这道题是关于运动的。 Alice和Bob在进行乒乓球比赛,比赛一共打了 n 个球,对于每一球,如果Alice赢了,那么裁判员会在计分板上记下'A',如果Bob赢了则会记下'B'。 时间转眼间到了2050年,计分板上某些信息因为时间流逝丢失了,但我们想要复现当年的激烈局面。 丢失的位 阅读全文
posted @ 2020-03-29 12:24 _Isaunoya 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 不会$dp$…… 我们发现绝对值的问题不太好搞,所以我们按顺序插入就可以了。 我们设一个状态 $dp_{i,j,k,l}$ 为 插入前 $i$ 个数,已经构成 $j$ 个连通块,$k$ 的贡献,$l$ 表示$1$和$n$的边界问题 的方案数。 那么答案显而易见是 $\frac{\sum_{k=m}^ 阅读全文
posted @ 2020-03-29 11:15 _Isaunoya 阅读(140) 评论(0) 推荐(0) 编辑