본문 바로가기
Algorithms

백준 10814. 나이순 정렬

by Brian Go 2022. 6. 7.

나이 순으로 정렬하고, 나이가 같다면 리스트의 순서를 바꾸지 않는 문제.

역시 클래스의 연산자 오버로딩을 이용해서 풀었다.

 

n = int(input())

class Info :
	def __init__(self, age, name):
		self.age = age
		self.name = name
	
	def __lt__(self, c):
		return self.age < c.age

lst = []
for i in range(n):
	age, name = input().split()
	age = int(age)
	lst.append(Info(age, name))
lst.sort()
for i in lst:
	print(i.age, i.name)
 

__lt__ (<) 연산자를 오버로딩해서 나이만 비교하도록 변형했다. 그리고 파이썬의 내장 sort()함수를 이용하면 정렬이 된다.

 

'Algorithms' 카테고리의 다른 글

백준 10815. 숫자 카드  (0) 2022.06.07
백준 18870. 좌표 압축  (0) 2022.06.07
백준 1181. 단어 정렬  (0) 2022.06.07
백준 11651. 좌표 정렬하기 2  (0) 2022.06.07
백준 11650. 좌표 정렬하기  (0) 2022.06.07

댓글