Two strings are anagrams of each other if the letters of one string can be rearranged to form the other string. Given a string, find the number of pairs of substrings of the string which are anagrams of each other.
For example , the list of all anagrammatic pairs is at positions respectively.
Complete the function sherlockAndAnagrams in the editor below. It must return an integer representing the number of anagrammatic pairs of substrings in .
sherlockAndAnagrams has the following parameter(s):
s: a string .
The first line contains an integer , the number of queries.
Each of the next lines contains a string to analyze.
String contains only lowercase letters ascii[a-z].
For each query, return the number of unordered anagrammatic pairs.
Sample Input 0
Sample Output 0
The list of all anagrammatic pairs is and at positions and respectively.
No anagrammatic pairs exist in the second query as no character repeats.
Sample Input 1
Sample Output 1
For the first query, we have anagram pairs and at positions and respectively.
For the second query:
There are 6 anagrams of the form at positions and .
There are 3 anagrams of the form at positions and .
There is 1 anagram of the form at position .
Sample Input 2
Sample Output 2
There are two anagrammatic pairs of length : and .
There are three anagrammatic pairs of length : at positions respectively.