문제를 보고 처음에 들었던 생각은, 이차원 배열을 만들어 입력받는 수의 좌표에 체크를 하고 체크된 좌표의 행과 열을 출력하는 건 어떨까 생각을 해봤다.
하지만, 마이너스 부호가 찍힌 애들은 어떻게 좌표로 찍어줄 수 있는 방법을 찾지 못해 다른 방법을 생각했다.
두 개의 받은 값을 리스트로 받아 하나의 리스트로 넣어주고 정렬하는 방식으로 문제를 해결했다. 파이썬에서는, 리스트 내부에 원소가 여러개 있는 리스트를 정렬하면 내부의 리스트를 알아서 정렬해준다.
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)
두 개의 값을 리스트 형태로 받아와 그대로 다른 리스트에 넣어준다. 그 리스트를 정렬하면 내부에서 모든 리스트의 첫 번째 인덱스 ~ 마지막 인덱스까지 고려하여 알아서 정렬해주는 정말 편리한 파이썬..!