#ARC216A. 左右同色翻转中间

左右同色翻转中间

当前没有测试数据。

题目大意

给定由0和1组成的两个长度为NN的字符串AABB,可进行任意次数(包括0次)指定操作:选择满足2iN12 \le i \le N-1Ai1=Ai+1A_{i-1}=A_{i+1}的整数ii,将AiA_i取反(0变1、1变0)。需判断能否通过操作让AABB一致,若可以求最少操作次数,若不行输出1-1。多组测试用例需分别求解。

输入格式

第一行输入测试用例数TT 接下来依次输入TT组用例,每组用例格式为:

  • 一行整数NN
  • 一行字符串AA
  • 一行字符串BB

输出格式

对每组用例,输出结果:

  • 无法使AA等于BB,输出1-1
  • 可以实现,输出最少操作次数

数据范围

1T2×1051 \le T \le 2 \times 10^5 3N1063 \le N \le 10^6 AABB为仅含0和1的长度为NN的字符串 所有测试用例的NN之和不超过10610^6

样例输入

4
4
0001
0111
6
101101
011100
5
10101
10101
10
0101000101
0011100111

样例输出

2
-1
0
6

样例说明

  1. 第一组用例:先选i=2i=2AA变为0101,再选i=3i=3变为0111,共2次操作完成。
  2. 第二组用例:无论进行多少次操作,都无法让AABB一致。
  3. 第三组用例:AABB初始一致,无需操作,次数为0。

来源

AtCoder ARC216 A题 https://atcoder.jp/contests/arc216/tasks/arc216_a