- 1번: 내가 작성한 풀이
def solution(strings, n):
answer = sorted(strings, key=lambda x:x[n])
for x in range(len(answer)):
for y in range(x+1, len(answer)):
if answer[x][n] == answer[y][n]:
if answer[x] > answer[y]:
answer[x], answer[y] = answer[y], answer[x]
return answer
- 2번: 1번 성공 후 참고한 풀이
def solution2(strings, n):
return sorted([s for s in strings], key=lambda x: [x[n], x]])
- 3번: 1번 성공 후 참고한 풀이
def solution(strings, n):
return sorted(sorted(strings), key=lambda x: x[n])
- 체크!
- 정렬기준을 여러개로 할 때 sorted의 key에서 list 또는 tuple를 이용할 수 있다
- 또는, sorted를 여러 번 사용할 수 있다 (물론 주어진 조건과 맞는지 확인 필수!)
'> 알고리즘 문제 풀이 > 프로그래머스' 카테고리의 다른 글
*lv2-타겟 넘버 (python, 파이썬) (0) | 2020.10.20 |
---|---|
lv2-전화번호 목록 (python, 파이썬) (0) | 2020.10.20 |
lv1-체육복 (python, 파이썬) (0) | 2020.10.19 |
lv1-완주하지 못한 선수 (0) | 2020.10.18 |
20/09- 프린터 (0) | 2020.09.29 |
댓글