Update appNew update is available. Click here to update.

Similar Strings

Last Updated: 7 Jul, 2021
Difficulty: Ninja

PROBLEM STATEMENT

Try Problem

You are given three strings, 'A', 'B', and 'C', each of length 'N' consisting of lower case alphabets. The difference between the three strings is defined as ∑|A[i] − B[i]| + |A[i] − C[i]| where |A[i] − B[i]| and |A[i] − C[i]| are the absolute differences between ASCII values of the characters at the position i in strings 'A', 'B' and 'A' ,'C' respectively. You are allowed to rotate the string 'A' cyclically. There are a total of 'N' possible rotations of a string of length 'N'.

Your task is to return the maximum and minimum difference of the three strings for all the possible rotations of string a.

For Example:
If the value of 'N' is 2, 'A' is "ab" , 'B' is "aa" and 'C' is "bb".
Then the answer for this input is
min = 2 
max = 2

Because current difference is 1 + 1 = 2
After one rotation difference will be 1 + 1 = 2
Hence, the minimum and the maximum answer is 2.
Input Format:
The first line contains a single integer 'T' denoting the number of test cases to be run. Then the test cases follow.

First line: Single integer 'N' (the length of the three strings)

Following three lines: Strings 'A, 'B', and 'C', respectively.
Output Format:
For each test case, Print two space-separated integers denoting the maximum and minimum difference of the three strings for all possible rotations of string a.

Output for each test case will be printed in a separate line.
Note
You are not required to print anything; it has already been taken care of. Just implement the function.
Constraints:
1 <= T <= 50
1 <= N <= 10^4

Time Limit: 1 sec.