atcoder#AGC030E. [AGC030E] Less than 3

[AGC030E] Less than 3

得分 : 14001400

问题陈述

给定两个字符串 sstt,它们的长度均为 NN
sstt01 组成。此外,在这些字符串中,同一个字符不会连续出现三次或更多次。

你可以通过重复执行以下操作来修改 ss

  • 自由选择一个索引 ii (1iN1 \leq i \leq N),并反转 ss 中的第 ii 个字符(即将 0 替换为 1,将 1 替换为 0),但操作后 ss 中同一个字符不得连续出现三次或更多次。

你的目标是使 ss 等于 tt。找出所需的最小操作次数。

约束条件

  • 1N50001 \leq N \leq 5000
  • sstt 的长度均为 NN
  • sstt01 组成。
  • sstt 中,同一个字符不会连续出现三次或更多次。

输入

输入从标准输入以以下格式给出:

NN

ss

tt

输出

找出将 ss 变为 tt 所需的最小操作次数。可以证明该目标始终在有限次数内实现。

4
0011
0101
4

一种可能的解决方案是 00111011100111010101

1
0
0
0
8
00110011
10101010
10