Problem source: https://www.hackerrank.com/challenges/the-love-letter-mystery
James found a love letter his friend Harry has written for his girlfriend. James is a prankster, so he decides to meddle with the letter. He changes all the words in the letter into palindromes.
To do this, he follows two rules:
- He can reduce the value of a letter, e.g. he can change d to c, but he cannot change c to d.
- In order to form a palindrome, if he has to repeatedly reduce the value of a letter, he can do it until the letter becomes a. Once a letter has been changed to a, it can no longer be changed.
Each reduction in the value of any letter is counted as a single operation. Find the minimum number of operations required to convert a given string into a palindrome.
The first line contains an integer T, i.e., the number of test cases.
The next T lines will contain a string each. The strings do not contain any spaces.
1≤ length of string ≤104
All characters are lower case English letters.
A single line containing the number of minimum operations corresponding to each test case.
4 abc abcba abcd cba
2 0 4 2
static void Main(string args)
int testCases = Convert.ToInt32(Console.ReadLine());
for (int i = 0; i < testCases; ++i)
string strInput = Console.ReadLine();
static int PalindromeCount(string strInput)
int counter = 0, start = 0, end = strInput.Length – 1;
while (start < end)
if (strInput[start] != strInput[end])
counter += Math.Abs(strInput[end] – strInput[start]);