Corrupted File
思路
题意
给定 串
每次可以将 中的一段合并成段中与和, 是否可能将
注意到逆向思维仍然不好处理, 考虑就正着做
考虑贪心的构造方式, 也就是尽可能把选择权留到后面去
不难发现对于 \(\alpha, \beta\) 前后都有的 \(1\) , 我们先把他去掉
然后形似
\[\alpha = \{0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 0\} \\
\beta = \{1, 0, 1, 1, 1, 0\}
\]
模拟一下不难发现
- 对于 \(\beta\) 中的连续 \(1\) 段
必须找到 \(\alpha\) 中一个长度相当的连续 \(1\) 段, 一直向后跳着找即可 - 对于 \(\beta\) 中的连续 \(0\) 段
必须找到 \(\alpha\) 中一个 \(0\) , 才能构造出 \(\beta\) 中的一个 \(0\)
两旁的 \(1\) 直接加入 \(0\) 段, 与和仍然不变, 为 \(0\)
总结
贪心的构造方法, 往往应该把选择权留到后面去

浙公网安备 33010602011771号