CodingameのClash of codeの問題で
100票以上いいねがついている問題を発見
Sort the Numbers!をChatGPTさんが解いたのがこちら
ソート内容をカスタマイズできる
問題は123 124 56 90 9といった数列が渡されこれを並び替えてつなぎ最も大きな数を作る
このcmp_to_keyは、いつか何かで役に立ちそうと
とりあえず何か作ろうと思い大富豪の一枚カード強さで並び替えてみました
from functools import cmp_to_key
def compare(a, b): return "3456789TJQKA2".index(a) - "3456789TJQKA2".index(b)
cards = list("7A23K96J58Q4T")
sorted_cards = sorted(cards, key=cmp_to_key(compare))
print("".join(sorted_cards))
いつかの時に私がカスタムソートで記事作ったなと覚えていれば...
蛇足 自作の失敗例