摘要: 题意: 求一棵树中距离为k的点对数量。点对没有顺序,即 (a,b) 和 (b,a) 是一样的。 n<=5e4, k<=500 思路: dfs1处理出 cnt[u][d] ,表示以u为根节点的子树中与u的距离为d的点的数量,距离大于k的点不用考虑。 dfs2计算答案。经过节点u且长为k的路径有两种,第 阅读全文
posted @ 2021-12-18 23:53 Bellala 阅读(60) 评论(0) 推荐(0)
摘要: 题意: 给定一个2n的排列p[],问是否存在两个长为n的数组a和b,不断取出a数组首和b的数组首中最小的那一个,最终可以得到p 思路: 假设 \(p_i\) 为 p 中最大的元素,则 \(p_i,p_{i+1},\cdots p_{2n}\) 一定是 a 或 b 中连续的一段。把这些元素从p中取出, 阅读全文
posted @ 2021-12-18 19:19 Bellala 阅读(41) 评论(0) 推荐(0)
摘要: 题意: 给定长为n的数组a,求a的严格上升子序列的异或和的所有可能取值。 n<=1e5, 0<=a[i]<=500 思路: 注意到元素范围特别小,所有异或和都小于512。 f[i] 表示所有异或和为 i 的上升子列中,末尾元素最小的那个子列的末尾元素。f[i]=INF 表示还没有子列的异或和为 i。 阅读全文
posted @ 2021-12-18 13:13 Bellala 阅读(28) 评论(0) 推荐(0)
摘要: 题意: 给定两个字符串 a 和 b ,找 a 的子串 C 和 b 的子串 D,最大化 \(4\cdot LCS(C,D)-|C|-|D|\) 。其中 LCS为最长公共子序列 (subsequence) 的长度。 子串 - substring - 连续 子序列 - subsequence - 不要求连 阅读全文
posted @ 2021-12-18 12:01 Bellala 阅读(34) 评论(0) 推荐(0)