관리 메뉴

100세까지 코딩

[백준] 11650번 좌표 정렬하기 (파이썬) 본문

코딩테스트/파이썬

[백준] 11650번 좌표 정렬하기 (파이썬)

100세까지 코딩 2024. 1. 27. 10:52
문제

나의 생각
  • 람다식을 통해 sorted()를 사용
나의 풀이
import sys

input = sys.stdin.readline

n = int(input())
matrix = [[0 for _ in range(2)] for _ in range(n)]

for i in range(n):
    x, y = input().split()
    matrix[i][0] = int(x)
    matrix[i][1] = int(y)

sorted_list = sorted(matrix, key=lambda x: (x[0], x[1]))
for e in sorted_list:
    print(*e)
참고
1. 2차원 좌표 만드는 방법 : [[0 for _ in range(열)] for _ in range(행)]
2. sorted(matrix) : 리스트 아이템의 각 요소 순서대로 정렬 후 리스트 반환
3. sorted(matrix, key = lambda x : x[0]) : 아이템 첫 번째 인자를 기준으로 오름차순 정리
4. sorted(matrix, key = lambda x : -x[0]) : 아이템 첫 번째 인자를 기준으로 내림차순 정리
5. sorted(matrix, key = lambda x : x[1]) : 아이템 두 번쨰 인자를 기준으로 오름차순 정리
6. sorted(matrix, key = lambda x : (x[0],x[1])) : 첫 번째 인자 기준으로 오름차순, 같으면 두 번째 인자 기준
7. *list : 컨테이너 타입의 데이터를 unpacking