You have been given two strings A and B consisting of lower case English letters. The task is to count the minimum number of pre-processing moves on the string A required to make it equal to string B after applying below operations:
1. Choose any index i (0 <= i < n) and swap characters a[i] and b[i].
2. Choose any index i (0 <= i < n) and swap characters a[i] and a[n-i-1] .
3. Choose any index i (0 <= i < n) and swap characters b[i] and b[n-i-1] .
In one preprocess move, you can replace a character in A with any other character of the English alphabet.
1. The number of changes you make after the preprocess move does not matter.
2. You cannot apply to preprocess moves to the String B or make any preprocess moves after the first change is made.
Detailed explanation ( Input/output format, Notes, Images )
The first line of input contains an integer ‘T’ representing the number of test cases. Then the test cases follow.
The first line of each test case contains string A consisting of lowercase English letters.
The second line of each test case contains string B consisting of lowercase English letters.
For each test case, print a single integer denoting the minimum number of pre-processing moves on the string A required to make it equal to the string B. Print -1, if it is impossible to make strings equal.
The output for each test case is in a separate line.
You do not need to print anything; it has already been taken care of. Just implement the given fuction.
1 <= T <= 100
1 <= N <= 5000
Where ‘N’ is the length of the strings.
Time Limit: 1 sec
Sample Input 1:
Sample Output 1:
Explanation of Sample Input 1:
For the first test case, preprocess moves are as follows: A = ‘b’, A = ‘c’, A = ‘a’ and A = ‘b’. Afterwards, A = ‘“bbcabba”. Then we can obtain equal strings by the following sequence of changes: swap(A, B) and swap(A, A). There is no way to use fewer than 4 preprocess moves before a sequence of changes to make strings equal, so the answer in this test case is 4.
For the second test case, no preprocess moves are required. We can use the following sequence of changes to make A and B equal: swap(B, B), swap(A, A).