# 451. Sort Characters By Frequency
"""
given a string 's', sort it in decreasing order based on the frequency of the
characters. the frequenc of a character is the number of times itappears in
the string. return the sorted string. if there are multiple answers, return
any of them
"""
class Solution(object):
def frequencySort(self, s):
"""
:type s: str
:rtype: str
"""
cnt = Counter(s)
s = list(s)
s.sort(key=lambda x: (-cnt[x], x))
return "".join(s)
if __name__ == "__main__":
obj = Solution()
print(obj.frequencySort("tree"))
print(obj.frequencySort("cccaaa"))
print(obj.frequencySort("Aabb"))