摘要: Game with Strings 题意并不是在图上走,看了好久才看出来。。 dp[ i ][ mask ]表示从 i 层开始走,起点有mask个, a的个数-b的个数的 最大值或者最小值。 阅读全文
posted @ 2019-04-12 20:23 NotNight 阅读(100) 评论(0) 推荐(0) 编辑
摘要: Sereja and Sets 我们先考虑对于一堆线段我们怎么求最大的不相交的线段数量。 我们先按 r 排序, 然后能选就选。 所以我们能想到我们用$dp[ i ][ j ]$表示已经选了 i 个线段, 最后一个被选的线段的右端点是 j 的方案数。 对于dp[ i ][ j ] -> dp[ i + 阅读全文
posted @ 2019-04-12 17:28 NotNight 阅读(157) 评论(0) 推荐(0) 编辑
摘要: Summer Practice Report dp[ i ][ 0 ]表示放完前 i 页, 第 i 页最后一段是 0, 0个数的最小值。 dp[ i ][ 1 ]表示放完前 i 页, 第 i 页最后一段是 1, 1个数的最小值。 这个转移细节有点多。。。 阅读全文
posted @ 2019-04-12 16:41 NotNight 阅读(165) 评论(0) 推荐(0) 编辑
摘要: Prefix Sums 在 n >= 4时候直接暴力。 n <= 4的时候二分加矩阵快速幂去check 阅读全文
posted @ 2019-04-12 14:57 NotNight 阅读(239) 评论(0) 推荐(0) 编辑
摘要: Liar 刚开始感觉只要开个dp[ i ][ j ][ 0 / 1 ]表示处理了s的前 i 个用了 k 段, i 是否是最后一段的最后一个字符 的 t串最长匹配长度, 然后wa24, 就gg了。感觉这个转移感觉很对, 但是实际上不对。。。 比如s = ababcde, t = abcde, x = 阅读全文
posted @ 2019-04-12 14:05 NotNight 阅读(282) 评论(0) 推荐(0) 编辑