2023.8.7 模拟赛

发布时间 2023-08-07 21:54:01作者: GloriousCc

A

有一个 01 串,只有一位是 \(1\),你每次可以翻转一个长为 \(k\) 的串,求出使得每个位置为 \(1\) 最少翻转多少次。
其中有一些位是存在 \(1\) 的。

考虑线段树优化建图,建立奇偶两颗线段树即可。
然后 deque 优化 BFS 即可。
也可以用 set 优化,并查集等。