파이썬 백준 11651번
실버5
https://www.acmicpc.net/problem/11651
문제 보기
분류: 정렬
문제 풀기
이전에 풀었던 11650번 문제의 연장선이다. 다시금 key 를 이용한 sort() 함수를 사용해보았다.
이전 문제의 정렬의 중심은 x 좌표였는데, 이번 문제의 중심은 y 좌표로 바뀌었다.
그래서 x 좌표를 기준으로 먼저 정렬하고 y 좌표 기준으로 한 번 더 정렬해 주면 된다.
x 나 y 좌표 둘 다 오름차순 정렬이어서 이전 문제와 크나큰 특이사항이 없었는데, 하나는 오름차순, 다른 하나는 내림차순 정렬을 하라고 문제 제시했으면 더 좋았을 것 같다.
코드 보기
import sys
inputdata = sys.stdin.readline
def fnSort(coordinate_ls):
coordinate_ls.sort(key=lambda x: (x[1], x[0]))
print(coordinate_ls) # test print
for coor in coordinate_ls:
print(*coor)
if __name__ == "__main__":
N = int(inputdata().strip())
coordinate_ls = [list(map(int, inputdata().split())) for _ in range(N)]
print(coordinate_ls) # test print
fnSort(coordinate_ls)
# 5
# 0 4
# 1 2
# 1 -1
# 2 2
# 3 3
# [[0, 4], [1, 2], [1, -1], [2, 2], [3, 3]]
# [[1, -1], [1, 2], [2, 2], [3, 3], [0, 4]]
# 1 -1
# 1 2
# 2 2
# 3 3
# 0 4
'공부하기 > 백준' 카테고리의 다른 글
[Python] 백준 풀기 10814 - 나이순 정렬 (0) | 2022.10.29 |
---|---|
[Python] 백준 풀기 2675 - 문자열 반복 (0) | 2022.10.28 |
[Python] 백준 풀기 3053 - 택시 기하학 (0) | 2022.10.26 |
[Python] 백준 풀기 2563 - 색종이 (0) | 2022.10.25 |
[Python] 백준 풀기 7568 - 덩치 (0) | 2022.10.24 |