一次操作只会让某个 0 越过一段连续的 1,不同的 0 永远不会互相跨越,所以所有 0 的相对顺序保持不变。
0
1
于是 SSS 与 TTT 中 0 的数量不同当且仅当无解;数量相同时,第 kkk 个 0 只能对应目标串中的第 kkk 个 0。
依次记录两个串中 0 的位置。若一对对应位置相同就不需要操作,否则可以把这个 0 一次移动到目标位置,且每次操作至多修正一对不同位置,因此答案正是对应位置不同的对数。
算法只需线性扫描,时间复杂度为 O(N)O(N)O(N),空间复杂度为 O(N)O(N)O(N)。
注册一个 Hydro 通用账户,您就可以在我们提供的所有在线评测服务上提交代码、参与讨论。
使用您的 Hydro 通用账户