def solution(strings, n):
answer = sorted(sorted(strings), key = lambda x : x[n])
return answer
처음에 for문 돌리다가 더 간단하게 할 방법 없을까 머리 쥐어짠 문제
풀이
1. 먼저 strings를 sorted로 해주어 정렬해준뒤
2. 람다 식을 이용해 n 번째 문자로 다시 정렬해준다.
왜 sorted를 두 번 해줄까?
문자열 2번째 기준으로 정렬되었으나, 2번째 문자열이 같을 경우, 사전 순으로 정렬되어야 하는데 그것이 적용 되어 있지 않다.
(abce와 abcd 중 사전적으로는 abcd가 앞) 따라서 sorted를 한 번 더 해준다.
'Algorithm > Programmers' 카테고리의 다른 글
[Python] 완주하지 못한 선수 (0) | 2021.04.12 |
---|---|
[Python] 문자열 내림차순으로 정렬하기 (0) | 2021.04.11 |
[Python] 문자열 내 p와 y의 개수 (0) | 2021.04.11 |
[Python] 나누어 떨어지는 숫자 배열 (0) | 2021.04.11 |
[Python] 두 정수 사이의 합 (0) | 2021.04.07 |