专栏文章

题解:AT_arc125_d [ARC125D] Unique Subsequence

AT_arc125_d题解参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@mincv2om
此快照首次捕获于
2025/12/02 00:20
3 个月前
此快照最后确认于
2025/12/02 00:20
3 个月前
查看原文
看到题很明显是一个 dp,根据数据范围设出状态 dpidp_i 为以 ii 结尾的只出现一次序列数。
我们需要考虑怎么处理子序列重复的问题,对于数组中两个值相同的 aia_iaja_j(默认 i<ji<j),那么对于 ii 以前的子序列就会分别与 aia_iaja_j 拼接出现两次。
所以我们预处理 lstilst_iaia_i 上一次出现的位置。
  • 11lsti1lst_{i}-1 会出现两次,对当前没有贡献。
  • lstilst_{i}i1i-1 均可以转移过来,故转移方程为 dpi=j=lstii1dpjdp_i = \sum_{j = lst_{i}}^{i-1} {dp_j}
注意边界处理,当 aia_i 是第一次出现时,dpidp_i 需要加一。

评论

0 条评论,欢迎与作者交流。

正在加载评论...