摘要:
给定数组, 将数组分为尽可能少的段使得每一个段的第一个或最后一个数字是段的长度, 求最少的段数 线性dp 令 dp[i] 表示将前 i 个数字全部分好段最少的段数 dp[0] = 0 枚举每一个 a[i], 这个数字有两种分段方案: 作为某个段的结尾: dp[i] = min(dp[i], dp[i 阅读全文
posted @ 2025-01-04 18:58
shen_kong
阅读(45)
评论(0)
推荐(0)
摘要:
给一 n 个数字的数组, 一个翻转操作将一个数按二进制形式翻转再转回十进制. 问最多翻转 m 个连续段, 完成后数组和最大为多少. 先求贡献数组(翻转后能增加多少), 然后问题转化为数组中选 m 个段和最大, 这和最大连续子数组和是不同的(只有一个段). 定义 \(dp[i][j][0] 代表在递推 阅读全文
posted @ 2025-01-04 17:17
shen_kong
阅读(105)
评论(0)
推荐(0)
摘要:
You are preparing a ribbon to decorate the Christmas present box. You plan to dye the ribbon, initially white, to make a stripe pattern of different s 阅读全文
posted @ 2025-01-04 01:33
shen_kong
阅读(64)
评论(0)
推荐(0)

浙公网安备 33010602011771号