摘要: solution: 考虑轮廓线 dp 。设 d p [ i ] [ j ] [ k ] dp[i][j][k] dp[i][j][k] 表示当前处理到 ( i , j ) (i,j) (i,j) ,且最近的 m m m 个格子二进制和为 k k k 的最少操作数。 1 1 1 表示横贴条, 0 0 阅读全文
posted @ 2021-08-17 20:21 仰望星空的蚂蚁 阅读(27) 评论(0) 推荐(0)
摘要: 题意:给你一个序列,有翻转区间和查询操作,每次查询一段区间里面的所有字符能组成的不同回文串的个数。 字符集大小 = 10 , n , q ≤ 1 0 5 n,q\leq 10^5 n,q≤105 。 solution: splay 好题。对于每个节点,用桶记录每种字符出现的次数,区间翻转就把 l 的 阅读全文
posted @ 2021-08-17 16:32 仰望星空的蚂蚁 阅读(14) 评论(0) 推荐(0)
摘要: 题意:给定一个整数集合包含 A 1 , A 2 , . . . , A n A1,A2,...,A_n A1,A2,...,An​ ,我们定义整数集合的代价为:如果数的个数 ≤ 2 \leq2 ≤2 ,则代价为 0 0 0 ;否则将每个整数至少与一个另外的整数建立连接。两个整数建立连接的代价是 ∣ 阅读全文
posted @ 2021-08-17 15:34 仰望星空的蚂蚁 阅读(14) 评论(0) 推荐(0)
摘要: solution: 核心考点是字符串排序。码量较大。 总的情况显然最多有 n m nm nm 种,通过二维散列比较子矩阵可以达到 l o g n + l o g m logn+logm logn+logm ,所以直接暴力枚举 + 比较大小即可。难点在比较大小的方法,我们设 p [ i ] [ j ] 阅读全文
posted @ 2021-08-17 08:12 仰望星空的蚂蚁 阅读(31) 评论(0) 推荐(0)