파이썬 백준 11650번
실버4
https://www.acmicpc.net/problem/11650
문제 보기
분류: 정렬
문제 풀기
sort() 함수에 옵션을 적용하여 사용해 볼 수 있는 문제였다.
2차원 배열로 모든 좌표를 입력 받고, sort() 를 적용해 주는데 key 를 적용하여 원하는 순서로 x, y 좌표를 정렬할 수 있다.
문제에서 제시한 "x좌표가 증가하는 순으로, x좌표가 같으면 y좌표가 증가하는 순서로 정렬" 를 적용시키기 위해서
coordinate_ls.sort(key=lambda x: (x[0], x[1]))
와 같이 코드가 작성 되었다.
코드 보기
import sys
inputdata = sys.stdin.readline
def fnSortCoordinates(coordinate_ls):
coordinate_ls.sort(key=lambda x: (x[0], x[1]))
print(coordinate_ls) # test print
return coordinate_ls
if __name__ == "__main__":
N = int(inputdata().strip())
coordinate_ls = [list(map(int, inputdata().split())) for _ in range(N)]
print(coordinate_ls) # test print
result = fnSortCoordinates(coordinate_ls)
for res in result:
print(*res)
# 5
# 3 4
# 1 1
# 1 -1
# 2 2
# 3 3
# [[3, 4], [1, 1], [1, -1], [2, 2], [3, 3]]
# [[1, -1], [1, 1], [2, 2], [3, 3], [3, 4]]
# 1 -1
# 1 1
# 2 2
# 3 3
# 3 4
'공부하기 > 백준' 카테고리의 다른 글
[Python] 백준 풀기 2563 - 색종이 (0) | 2022.10.25 |
---|---|
[Python] 백준 풀기 7568 - 덩치 (0) | 2022.10.24 |
[Python] 백준 풀기 2477 - 참외밭 (0) | 2022.10.22 |
[Python] 백준 풀기 1149 - RGB거리 (0) | 2022.10.21 |
[Python] 백준 풀기 1037 - 약수 (0) | 2022.10.20 |