Algorithm/Problems

[백준/파이썬] 10814번 나이순 정렬

공부좀하시졍 2022. 11. 9. 10:08

https://www.acmicpc.net/problem/10814

 

10814번: 나이순 정렬

온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을

www.acmicpc.net

import sys

read = sys.stdin.readline

n = int(input())

members = []

for i in range(n):
  age, name = read().split()
  age = int(age)
  members.append((age, name, i))

members.sort(key=lambda x: (x[0], x[2]))

for i in range(n):
  print(members[i][0], members[i][1])

나이와 이름을 입력 받은 뒤 나이가 같을 경우 순서를 고려해 for문 변수를 함께 리스트에 입력해주었다.

그 후 sort함수의 key 매개변수를 이용해 정렬해주었다.

 

** 나이는 int로 형변환 해주어야 오류가 나지 않는다..... 그리고 i 는 굳이 같이 안넣어줘도 잘 정렬이 되나부다...?