100세까지 코딩
[백준] 11650번 좌표 정렬하기 (파이썬) 본문
문제
나의 생각
- 람다식을 통해 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
'코딩테스트 > 파이썬' 카테고리의 다른 글
[백준] 12789번 도키도키 간식드리미 (파이썬) (0) | 2024.01.27 |
---|---|
[백준] 4949번 균형잡힌 세상 (파이썬) (0) | 2024.01.27 |
[백준] 1018번 체스판 다시 칠하기 (파이썬) (0) | 2024.01.19 |
[백준] 19532번 수학은 비대면강의입니다 (파이썬) (0) | 2024.01.19 |
[백준] 2231번 분해합 (파이썬) (0) | 2024.01.19 |