[백준] 11650번 좌표 정렬하기

Song_Song·2021년 5월 13일
0

문제를 보고 처음에 들었던 생각은, 이차원 배열을 만들어 입력받는 수의 좌표에 체크를 하고 체크된 좌표의 행과 열을 출력하는 건 어떨까 생각을 해봤다.

하지만, 마이너스 부호가 찍힌 애들은 어떻게 좌표로 찍어줄 수 있는 방법을 찾지 못해 다른 방법을 생각했다.

두 개의 받은 값을 리스트로 받아 하나의 리스트로 넣어주고 정렬하는 방식으로 문제를 해결했다. 파이썬에서는, 리스트 내부에 원소가 여러개 있는 리스트를 정렬하면 내부의 리스트를 알아서 정렬해준다.

import sys

n = int(sys.stdin.readline())
arr = []

for i in range(n):
    [a,b] = list(map(int,sys.stdin.readline().split()))
    arr.append([a,b])

arr = sorted(arr)

for a, b in arr:
    print(a, b)

두 개의 값을 리스트 형태로 받아와 그대로 다른 리스트에 넣어준다. 그 리스트를 정렬하면 내부에서 모든 리스트의 첫 번째 인덱스 ~ 마지막 인덱스까지 고려하여 알아서 정렬해주는 정말 편리한 파이썬..!

profile
성장을 위한 정리 블로그

0개의 댓글