飘花效果

2025.12 做题记录

P12687 [KOI 2022 Round 1] 鹅卵石

首先显然能用操作一就操作一。

注意到 \(1\le n\le 2500\),考虑 DP,设 \(f_i\) 为清除前 \(i\) 个鹅卵石堆的最小操作次数。

  • 首先可以这一堆用操作二拿掉,转移 \(f_i = f_{i - 1} + 1\)

  • 还可以找到一堆连续区间 \([j ,i]\) 用操作二拿掉,\([1 ,j - 1]\) 用操作一拿掉转移,此时最优的肯定是用 \(j - 1\) 尽量带走 \(j\),因此需要找到一个能够拿完的石子堆 \(j\),操作二的次数为 \(i - j\),转移为 \(f_i = f_{j - 1} + i - j\),否则先用操作一肯定不劣。

找到符合要求的石子堆直接模拟即可。

https://www.luogu.com.cn/problem/P13513

裸 DP,可以考验你写 DP 是否有一个清晰的头脑。

posted @ 2025-12-05 16:12  2021zjhs005  阅读(1)  评论(0)    收藏  举报