https://programmers.co.kr/learn/courses/30/lessons/12915
다음 문제는, 리스트와 정수 n이 주어졌을 때, 각 문자열 n번째 글자를 기준으로 정렬해 반환하는 문제입니다.
- 문자열 맨 앞에 n번째 단어를 붙여준다.
- 그 다음 정렬하고
- 슬라이싱을 이용해 1번째 인덱스부터 단어만 출력해준다.
def solution(strings, n):
answer = []
for i in range(len(strings)):
strings[i] = strings[i][n] + strings[i]
strings.sort()
for i in range(len(strings)):
answer.append(strings[i][1:])
return answer
def strange_sort(strings, n):
'''strings의 문자열들을 n번째 글자를 기준으로 정렬해서 return하세요'''
return sorted(strings, key=lambda x: x[n])
strings = ["sun", "bed", "car"]
print(strange_sort(strings, 1))