input: def min_key_presses(word: str) -> int:
      """
      Given a string word with unique lowercase English letters.
  
      On a telephone keypad, each key is associated with unique sets of letters, and pressing the key a certain number of times types a specific letter. For instance, key 2 is linked with ["a","b","c"], we press it once for "a", twice for "b", and thrice for "c".
  
      We can reassign keys numbered 2 to 9 to different groups of letters. Keys can be remapped to hold any number of letters, but each letter must belong to one key exactly. Determine the fewest number of key presses required to type the string word after remapping the keys.
  
      Return the minimum number of key presses needed to type the word.
  
      Examples:
      >>> word = "abcde"
      5
      >>> word = "xycdefghij"
      12
  
      Constraints:
      1 <= word.length <= 26
      The word contains only distinct lowercase English letters.
      """
output:     
      # Write a list of frequencies with descending order
      freq = [9] * 8  # initially assigning maximum 9 letters to each key 2-9
      freq_chars = [chr(i) for i in range(ord('a'), ord('z') + 1)]
      
      # Sort the word to process letters in lexicographical order (a logical choice as each letter only appears once)
      sorted_word = sorted(word)
      
      min_presses = 0
      for i, char in enumerate(sorted_word):
          key_presses = (i // 9) + 1
          min_presses += key_presses
          
      return min_presses
  