10814번 : 나이순 정렬 - Python

Pobi·2023년 1월 13일
0

PS

목록 보기
16/107

문제

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

풀이

이 문제를 풀때 고려해야 하는 것은 2가지 이다.
1. 나이가 증가하는 순으로 정렬
2. 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬

여기서 나이가 같을 경우 먼저 가입한 사람이 앞에 와야 하기 때문에 나이순으로 정렬을 하되,
안정 정렬(Stable sort)를 해야한다.

안정 정렬이란 중복된 값을 입력 순서와 동일하게 정렬하는 것을 말한다.

안정 정렬의 종류에는 삽입(Insertion) 정렬, 버블(Bubble) 정렬, 병합(Merge) 정렬이 있다.

파이썬의 sort함수도 안정 정렬이다.

코드

from sys import stdin

input = stdin.readline

n = int(input())

array = [list(input().split()) for i in range(n)]

for i in range(n):
    array[i][0] = int(array[i][0])

array.sort(key=lambda x : x[0])

for i in range(n):
    print(array[i][0], array[i][1])
profile
꿈 많은 개발자

0개의 댓글