Given a set of reviews provided by the customers for different hotels and a string containing Good Words, you need to sort the reviews in descending order according to their Goodness Value (Higher goodness value first). We define the Goodness Value of a string as the number of Good Words in that string.
NOTE: Sorting should be stable. If review i and review j have the same Goodness Value then their original order would be preserved.
You are expected to use Trie in an Interview for such problems
First argument is a string A containing "Good Words" separated by "_" character
Second argument is a vector B of strings containing Hotel Reviews. Review strings are also separated by "_" character.
Return a vector of integers which contain the original indexes of the reviews in the sorted order of reviews.
A = "cool_ice_wifi" B = ["water_is_cool", "cold_ice_drink", "cool_wifi_speed"]
[2, 0, 1]
sorted reviews are ["cool_wifi_speed", "water_is_cool", "cold_ice_drink"]
NOTE: You only need to implement the given function. Do not read input, instead use the arguments to the function. Do not print the output, instead return values as specified. Still have a doubt? Checkout Sample Codes for more details.