CF1237H.Balanced Reversals

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

You have two strings aa and bb of equal even length nn consisting of characters 0 and 1.

We're in the endgame now. To finally make the universe perfectly balanced, you need to make strings aa and bb equal.

In one step, you can choose any prefix of aa of even length and reverse it. Formally, if a=a1a2ana = a_1 a_2 \ldots a_n , you can choose a positive even integer pnp \le n and set aa to apap1a1ap+1ap+2ana_p a_{p-1} \ldots a_1 a_{p+1} a_{p+2} \ldots a_n .

Find a way to make aa equal to bb using at most n+1n + 1 reversals of the above kind, or determine that such a way doesn't exist. The number of reversals doesn't have to be minimized.

输入格式

The first line contains a single integer tt ( 1t20001 \le t \le 2000 ), denoting the number of test cases.

Each test case consists of two lines. The first line contains a string aa of length nn , and the second line contains a string bb of the same length ( 2n40002 \le n \le 4000 ; nmod2=0n \bmod 2 = 0 ). Both strings consist of characters 0 and 1.

The sum of nn over all tt test cases doesn't exceed 40004000 .

输出格式

For each test case, if it's impossible to make aa equal to bb in at most n+1n + 1 reversals, output a single integer 1-1 .

Otherwise, output an integer kk ( 0kn+10 \le k \le n + 1 ), denoting the number of reversals in your sequence of steps, followed by kk even integers p1,p2,,pkp_1, p_2, \ldots, p_k ( 2pin2 \le p_i \le n ; pimod2=0p_i \bmod 2 = 0 ), denoting the lengths of prefixes of aa to be reversed, in chronological order.

Note that kk doesn't have to be minimized. If there are many solutions, output any of them.

输入输出样例

  • 输入#1

    4
    0100011011
    1101011000
    10101010
    10101010
    0011
    1001
    100011
    110010
    

    输出#1

    3
    6 4 10
    0
    
    -1
    7
    2 6 2 6 2 2 6
    

说明/提示

In the first test case, string aa changes as follows:

  • after the first reversal: 1000101011;
  • after the second reversal: 0001101011;
  • after the third reversal: 1101011000.
首页