信息
- ID
- 1667
- 时间
- 2000ms
- 内存
- 1024MiB
- 难度
- 10
- 标签
- 递交数
- 1
- 已通过
- 1
- 上传者
令 CN+1=0,并令 Ci=(Ci+1+BN−iAi)modP。
由于 B 在模 P 下可逆,A 与 C1,…,CN 一一对应;区间哈希可写成 BR−N(CL−CR+1),所以它非零恰好等价于 CL=CR+1。于是每个区间 (L,R) 对应图上的边 (L,R+1),问题转化为判断这个 N+1 点图能否用不超过 P 种颜色正确染色。
预处理每个顶点子集是否为独立集。令 dp[S] 为诱导子图 S 的最小色数,若 S 独立则为一,否则枚举包含固定最低位顶点的独立子集 T⊆S,转移 dp[S]=min(dp[S∖T]+1)。
固定一位避免重复枚举同一划分,复杂度为 O(3N+1),空间复杂度为 O(2N+1)。