摘要: LINK: "子序列自动机" 想了一些很有趣的做法。 dp 容易看出 f[i][j]表示前i个数匹配了j个数的dp 不过复杂度很高。 贪心 容易想到匹配的时候每个数字尽量往前匹配 这样显然是最优的 复杂度Qn. 可以发现 这个贪心显然可以优化 我们无非是要寻找下一个离当前位置最近的一个位置。 动态开 阅读全文
posted @ 2020-04-22 21:35 chdy 阅读(105) 评论(0) 推荐(0) 编辑
摘要: LINK: "树与异或" 这种套路题还是得多写写。 第一问 直接树上莫队即可(不过这个板子也容易遗忘 推荐dfs序上搞 树分块总觉得比较难写... 第二问 询问树上路径上点权为z的倍数的点的个数. Analysis:可以考虑暴力了。暴力枚举z 然后统计询问的答案。 不过每次要将z的倍数的点要加到数据 阅读全文
posted @ 2020-04-22 19:59 chdy 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 容易发现可以枚举j 那么只需要计算出 l~j这段是回文串的l的和 以及j+1~r这段是回文串的r的和。 可以manacher 之后想要求出以j为右端点的回文串左端点的和 这个东西我们通过某个点为中心的最长回文子串来做出。 容易发现是一个类似于等差数列的东西的 可以上线段树 不过没有在线询问啥的 可以 阅读全文
posted @ 2020-04-22 15:59 chdy 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 这道题涉及了一个很久以前会的知识点 考试的时候建图硬是没想出来 真自闭。 对于n<=10 容易发现可以爆搜全排列 期望的得分20. 对于$a_i=0$ 观察发现方阵中的值都为正数 这意味着某种数字选多少都行 有关的是当前这种数字选了没有。 数字只有10个 爆搜某种数字选了没有即可。 40 code: 阅读全文
posted @ 2020-04-22 15:11 chdy 阅读(203) 评论(0) 推荐(0) 编辑