알고리즘/Python

백준 알고리즘: 11651번 좌표 정렬하기 2 (Python)

두넌 2023. 6. 1.

문제 정보


 

 

11651번: 좌표 정렬하기 2

첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다.

www.acmicpc.net

 

 

핵심


 

백준 알고리즘: 11650번 좌표 정렬하기 (Python)

문제 정보 11650번: 좌표 정렬하기 첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고,

dduneon.tistory.com

이 문제와 동일함, 다만 정렬의 순서가 다를 뿐

문제에 대한 설명이나 사용하는 함수들은 해당 글을 참고하면 된다

 

 

풀이


import sys

i = sys.stdin.readlines()[1:]
i.sort(key=lambda n: int(n.split()[0]))
i.sort(key=lambda n: int(n.split()[1]))
print(''.join(i))

나도 여러 공부한 내용들을 바탕으로 간결한 코드를 작성해 보았다

물론 전 글에서 설명했다시피 x를 이번에는 1,000,000 처럼 큰 수로 나눠서 더하는 식으로 풀면 더욱 효율적이겠지만 실제로 비슷한 문제가 나오더라도 그렇게 못 풀거같아서 이런 식으로 풀려고 하였음

 

고찰


생략

댓글