[백준/Python] - 10814번 나이순 정렬

2025. 3. 26. 22:42·백준[파이썬]
728x90
반응형
SMALL

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

 

제출코드1

import sys
input = sys.stdin.readline
N = int(input())
N_list = []
for i in range(N):
    x, y = input().split()
    N_list.append((int(x),y,i))
N_list.sort(key = lambda x:(x[0],x[2]))
for x,y,i in N_list:
    print(x,y)

 

접근 방법 및 풀이

이제 정렬 시 람다는 익숙해졌다.

하지만 가입한 순으로 하라는 거에서 뇌가 정지되었는데 N범위 동안 for문을 돌고 있을 때 i를 변수로 넣어서 N_list의 튜플에 추가하면 되겠구나 생각을 해봤다. 이렇게 풀어보니 통과였다.

 

근데 내가 너무 어렵게 푼거 같아 다른 사람의 코드를 찾아봤다.  

그런데 파이썬의 sort함수는 안정정렬(Stable Sort)를 지원한다고 한다.

※안정정렬이란?

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

즉, 같은 값을 정렬할 때 원래 입력 순서가 보장되는 정렬 방식을 의미한다.

백준 예시를 살짝 바꿔 설명하면 

 

#input
21 Junkyu
23 Sunyoung
21 Dohyun

이렇게 입력이 주어졌다고 하자

파이썬의 sort함수는 안정정렬을 지원하니 sort함수로 나이순으로 정렬하면

#output
21 JunKyu
21 Dohyun
23 Sunyoung

위와 같이 출력되는 것이다.

 

그렇게 코드를 조금 수정하고 다시 풀었다.

 

제출 코드2

import sys
input = sys.stdin.readline
N = int(input())
N_list = []
for _ in range(N):
    x, y = input().split()
    N_list.append((int(x),y))
N_list.sort(key = lambda x:x[0])
for x,y in N_list:
    print(x,y)

똑같이 통과가 되는 것을 볼 수 있다.

728x90
반응형
LIST

'백준[파이썬]' 카테고리의 다른 글

[백준/Python] - 10815번 숫자 카드  (0) 2025.03.28
[백준/Python] - 18870 좌표 압축  (0) 2025.03.27
[백준/Python] - 1181번 단어 정렬하기  (0) 2025.03.25
[백준/Python] - 11650번 좌표 정렬하기  (0) 2025.03.25
[백준/Python] 1157 단어공부  (0) 2025.01.24
'백준[파이썬]' 카테고리의 다른 글
  • [백준/Python] - 10815번 숫자 카드
  • [백준/Python] - 18870 좌표 압축
  • [백준/Python] - 1181번 단어 정렬하기
  • [백준/Python] - 11650번 좌표 정렬하기
코린이 파닥거리기
코린이 파닥거리기
    반응형
    250x250
  • 코린이 파닥거리기
    코린이 파닥거리기의 블로그
    코린이 파닥거리기
  • 전체
    오늘
    어제
    • 분류 전체보기 (126) N
      • 백준[파이썬] (55) N
      • Spring (31)
      • CS (1)
      • 자바 (4)
      • 백준[자바] (20)
      • 프로그래머스 (5)
      • 토이프로젝트 (1)
      • SWEA (2)
      • MSA (6)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    테스트코드
    프로그래머스
    코딩테스트
    컨테이너
    자바
    스프링 부트와 AWS로 혼자 구현하는 웹 서비스
    스프링 클라우드
    재귀
    JPA
    백준
    MSA
    스프링
    파이썬
    Java
    spring
    JWT
    스프링부트
    누적합
    SWEA
    SpringBoot
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
코린이 파닥거리기
[백준/Python] - 10814번 나이순 정렬
상단으로

티스토리툴바