방명록
- [알고리즘][파이썬] 백준_11650_좌표 정렬하기2021년 12월 20일 10시 45분 25초에 업로드 된 글입니다.작성자: DandyNow728x90반응형
https://www.acmicpc.net/problem/11650
x, y 좌표의 점이 N개 있다.
점을 오름차순 정렬해야한다.
이때 x가 동일하면 y를 기준으로 순서를 결정한다.
list 제공 함수 sort를 이용하면 매우 간단히 해결 할 수있는 문제이다.
하지만 처음에 문제의 의도를 이해하지 못해 애를 먹었다.
아래 그림과 같이 오름차순 정렬하면 되는 간단한 문제인데 너무 어렵게 생각했다.
list 제공 함수 이용(sort)
# list 제공 함수 sort 이용(결과: 맞았습니다!) import sys N = int(sys.stdin.readline()) lst = [] for _ in range(N): tpl = tuple(map(int, sys.stdin.readline().split())) lst.append(tpl) lst.sort() for i in range(N): print(lst[i][0], lst[i][1])
각 점의 좌표를 tpl 튜플에 담고,
그 좌표를 lst 리스트에 담았다.
list 내장 함수 sort를 이용해 lst를 오름차순으로 정렬했다.
sort 함수만으로도 문제의 지문에서 요구하는
"x좌표가 같으면 y좌표가 증가하는 순서로 정렬"
이 가능하다.
sort는 다차원 리스트(혹은 튜플)에서
비교하고자하는 각 리스트의 0번 주소 값을 먼저 비교하고,
0번 주소 값이 같으면 그 다음 값을 비교하여
오름차순 정렬하기 때문이다.
728x90반응형'CS > 코딩 테스트' 카테고리의 다른 글
[알고리즘][파이썬] 백준_1181_단어 정렬 (0) 2021.12.24 [알고리즘][파이썬] 백준_11651_좌표 정렬하기 2 (0) 2021.12.23 [알고리즘][파이썬] 백준_1427_소트인사이드 (0) 2021.12.16 [알고리즘][파이썬] 백준_2108_통계학 (0) 2021.12.16 [알고리즘][파이썬] 백준_10989_수 정렬하기 3 (0) 2021.12.14 다음글이 없습니다.이전글이 없습니다.댓글