백준 11651

justhaza.log·2024년 2월 5일

알고리즘: BOJ

목록 보기
16/125

n개의 2차원 좌표를 y-좌표 오름차순, x-좌표 오름차순으로 정렬하는 문제이다.

sort() 메서드와 람다 함수를 통해 쉽게 풀 수 있다.


코드는 다음과 같다.

# 11651

import sys

n = int(sys.stdin.readline())

points = []
for _ in range(n):
    points.append(list(map(int, sys.stdin.readline().split())))

# 좌표 정렬(y-좌표 오름차순 및 x-좌표 오름차순)    
points.sort(key=lambda point: (point[1], point[0]))

for i in range(n):
    print(points[i][0], points[i][1])

다른 풀이, chatGPT를 참고하는 과정에서 정렬된 좌표를 출력할 때 반복 변수 i를 쓰지 않아도 되는 for문 사용 방법을 알게 되었다.

for i in range(n):
	print(points[i][0], points[i][1])
    
for x, y in points:
    print(x, y)
profile
알고리즘이나 SQL 문제 풀이를 올리고 있습니다. 피드백 환영합니다!

0개의 댓글