摘要: 传送门 又是神仙DP 发现如果只有两个串就很好做了 于是这个神仙DP定义就从这里下手:令 \(dp[p][c][l][r]\) 表示在 \([s_l, s_r]\) 这段字符串中,考虑从第 \(p\) 个位置开始的后缀,并要求这个字符至少为 \(c\) 考虑转移,因为这里有个「至少」,第一个转移是直 阅读全文
posted @ 2021-08-20 08:15 Administrator-09 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 传送门 首先证一个结论:t集合即是原串的boarder不用证了吧 于是转化题意:要构造一个boarder集合确定的01串 考虑从小的boarder推向大的boarder,令小boarder为s,大boarder为t \(|s|*2 \leqslant |t|\) 此时在s后面补上s的一段后缀即可 \ 阅读全文
posted @ 2021-08-20 07:42 Administrator-09 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 传送门 因为一个等号挂掉了10pts 发现每个黑色段一定对应了一段不可行的出发区间 检查是否存在所有黑色段的并集的补集即可 具体来说,我们对于每个黑色段计算出一个(有的是两个)区间 \([l, r]\) ,把它们全合并,看有没有剩下的位置 Code: #include <bits/stdc++.h> 阅读全文
posted @ 2021-08-20 07:20 Administrator-09 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 传送门 挺遗憾的一个题 考场上想到的思路是题解的退化版,可以有71pts(赛时以为只有20pts),但因为这一场的策略原因没有打…… 首先发现颜色种类数很少,可以直接bitset上树剖维护,炸不了空间 所以可以先bitset上树剖处理出每个人到lca经过的颜色集合 然后问题可以转化为给定 \(c\) 阅读全文
posted @ 2021-08-20 07:12 Administrator-09 阅读(11) 评论(0) 推荐(1) 编辑