# https://leetcode.com/problems/weighted-word-mapping class Solution: def mapWordWeights(self, words: List[str], weights: List[int]) -> str: result = [] for word in words: weight = 0 for c in word: weight += weights[ord(c) - ord('a')] result.append(chr(ord('z') - weight % 26)) return ''.join(result)