10814번: 나이순 정렬

Mkim4·2023년 9월 29일
0

10814번: 나이순정렬

n = int(input())
members = []

for index in range(n):
    age , member  = input().split()
    members.append((int(age), member, index))

member_list = sorted(members, key = lambda x : (x[0], x[2]))

for member in member_list:
    print(member[0],member[1])

20920번과 같이 딕셔너리 형태로 풀려다가 실패하였다.
(나이, 이름, 가입순서)로 되어있는 튜플이 나열된 리스트로 접근하였다.

members를 출력하면 [(20, 'Sunyoung', 2), (21, 'Junkyu', 0), (21, 'Dohyun', 1)] 이런 형태이다.
특히 원소를 받을 때 age를 int형으로 바꿔주는 것을 잊지 않아야한다.

정렬 문제를 풀면서 문제에서 요구하는 우선순위나 입력값을 받을 때 어떤 자료구조를 사용해야하는지 고민하면서 푼다면 훨씬 더 빠른 시간 안에 정답에 접근할 수 있는 것 같다.

profile
귀요미 개발자

0개의 댓글

Powered by GraphCDN, the GraphQL CDN