[프로그래머스](python) 문자열 내 마음대로 정렬하기

문제


🧩 수도 코드

strings 문자들의 각각[n]을 구하여 정렬하고
정렬된 [n]이 strings의 각 문자에 있다면 answer에 더하기


🧩 틀린 풀이

def solution(strings, n):
    letters = []
    answer = []
    for word in strings:
        letters.append(word[n])
    letters.sort()
    for i in letters:
        for word in strings:
            if i == word[n]:
                answer.append(word)
    return answer

입출력 예 2번의 답이
['abce', 'abcd', 'abce', 'abcd', 'cdx']
순서도 다를 뿐 겹쳐서 나왔다... 😞


🧩 다른 풀이

def solution(strings, n):
    return sorted(strings, key=lambda x: (x[n], x))

🧩 lambda x

좋은 웹페이지 즐겨찾기