https://www.acmicpc.net/problem/11650
문제 2차원 평면 위의 점 N개가 주어진다. 좌표를 x좌표가 증가하는 순으로, x좌표가 같으면 y좌표가 증가하는 순서로 정렬한 다음 출력하는 프로그램을 작성하시오.
1
2
3
4
5
6
7
8
num = int(input())
num_list = []
for i in range(num):
num_list.append(list(map(int,input().split())))
num_list = sorted(num_list, key = lambda x: (x[0],x[1]))
for i in range(num):
print(*num_list[i])
앞에서 푼문제와 비슷합니다. 입력받고 조건에 따라서 정렬
https://www.acmicpc.net/problem/11651
1
2
3
4
5
6
7
8
num = int(input())
num_list = []
for i in range(num):
num_list.append(list(map(int,input().split())))
num_list = sorted(num_list, key = lambda x: (x[1],x[0]))
for i in range(num):
print(*num_list[i])
람다 x에서 위치만 바꾸면 됩니다. 다만 파이썬으로하면 시간초과가나와서 pypy로 하셔야 합니다.
Comments powered by Disqus.