Lexicographical order is often known as alphabetical order when dealing with strings. A string is greater than another string if it comes later in a lexicographically sorted list.
Given a word, create a new word by swapping some or all of its characters. This new word must meet two criteria:
Example
The next largest word is .
Complete the function biggerIsGreater below to create and return the new string meeting the criteria. If it is not possible, return no answer
.
Function Description
Complete the biggerIsGreater function in the editor below.
biggerIsGreater has the following parameter(s):
Returns
– string: the smallest lexicographically higher string possible or no answer
Input Format
The first line of input contains , the number of test cases.
Each of the next lines contains .
Sample Input 0
5 ab bb hefg dhck dkhc
Sample Output 0
ba no answer hegf dhkc hcdk
Explanation 0
ba
is the only string which can be made by rearranging ab
. It is greater.bb
and get a greater string.hegf
is the next string greater than hefg
.dhkc
is the next string greater than dhck
.hcdk
is the next string greater than dkhc
.Sample Input 1
6 lmno dcba dcbb abdc abcd fedcbabcd
Sample Output 1
lmon no answer no answer acbd abdc fedcbabdc
You need to login in order to like this post: click here
YOU MIGHT ALSO LIKE