P9644 [SNCPC2019] Turn It Off

个人总结

考虑二分答案,二分的是小于 \(k\) 的最大段数,使得包含所有的 \(1\)。

设枚举的段数为 \(x\),在 \(check\) 函数中,通过枚举找到第一个 \(1\),接着向后累加 \(x\),直到覆盖完该序列,若符合题意中条件即段数小于 \(k\)

继续向下二分,否则向上二分,直到找到答案。

posted @ 2026-07-31 00:01  yingMC  阅读(13)  评论(1)    收藏  举报