1 条题解
-
0
题解
思路
把字符串写成若干个
1及其间的零段。令 为第 个1左侧零段长度加一,并在最后加入尾零段长度加一。每个1对好子串数的贡献是相邻两项之积,因此总数为 。包含该1的最长好子串长度是 。做法
问题等价于统计正整数序列,使相邻乘积和为 ,且每对相邻数满足 。
令 表示当前相邻乘积和为 、最后一项为 的序列数。空贡献时任意首项 都有一个初始方案。枚举下一项 ,若 ,则转移到 。最终对 求和。
当 时所有相邻项只能为一,对应唯一字符串
1重复 次。小规模可以枚举长度不超过 的全部二进制串并直接检查。复杂度
时间复杂度 ,空间复杂度 。
- 1
信息
- ID
- 1433
- 时间
- 2000ms
- 内存
- 512MiB
- 难度
- 10
- 标签
- 递交数
- 1
- 已通过
- 0
- 上传者