백준 11651번 좌표 정렬하기 -Python

devmin24·2021년 3월 12일
0

⏳ 도전! 알고리즘

목록 보기
1/32
post-thumbnail
post-custom-banner

문제 링크 : https://www.acmicpc.net/problem/11651

이 문제는 평면 위에 점 N개가 주어지고, 좌표를 Y순 -> X순으로 증가하는 순서를 정렬하는 문제이다.

풀이

  1. 입력값을 정수로 리스트에 넣어준다.
  2. y축 기준으로 정렬하기 위해 리스트의 값을 반대로 넣어주고 또다른 빈 리스트에 넣어준다.
  3. y축을 기준으로 담아진 리스트를 오름차순으로 정렬하고 출력은 x,y의 순서로 한다.

해답

num = int(input())
a = []

for i in range(num):
    [x,y] = map(int, input().split()) # 입력값을 공백을 제외하여 정수로 리스트 [x,y]에 넣어준다
    rev = [y,x] # x,y로 받은 값을 뒤집어줌 (y 기준으로 정렬하기 위해)
    a.append(rev) # 뒤집어준 값을 a리스트에 넣어준다
b = sorted(a) # a에 들어간 요소들을 정렬하여 b에 넣어준다
for i in range(num) : # x,y로 출력하기 위해 다시 순서를 뒤집어서 출력해준다.
    print(b[i][1],b[i][0])
profile
꾸준함, 열정 한 가득 챙겨 끝없는 목표를 향해 달려가는 개발자👩‍💻
post-custom-banner

0개의 댓글