😁 빅데이터 문제 풀기 & Study/- BAEKJOON 문제

[11650] 좌표 정렬하기 / 파이썬 (sort 함수 key 기능)

또방91 2022. 1. 28. 14:20
728x90

 

 

 

 

 

 

✏️ 문제 링크

https://www.acmicpc.net/problem/11650


실패....ㅠㅠ

sort( )함수에서 key를 이용해서 정렬기준을 정한다는 건 알았지만...

두개의 경우는 어떻게 해야하는지 몰라서 실패...

실패 코드식을 보자면...... 두개 기준을 and로 한번 써봤다! 조건식에서처럼...말이다 ㅠ

from sys import stdin
t=int(stdin.readline())

nums=[]
for i in range(t):
    nums.append(list(map(int,stdin.readline().split())))
nums.sort(key=lambda x:x[0] and x[1])

for i in nums: print(i[0],i[1])

정답은 ??

#input으로 받아도 되긴하지만, 시간제한이 짧은 것 같길래 오랜만에 써봄
from sys import stdin 
t=int(stdin.readline())

#num 리스트에 좌표들 받아오기
nums=[]
for i in range(t):
    nums.append(list(map(int,stdin.readline().split())))

#sort함수 기준key가 두개일 때는 튜플 형식으로 지정을 해줘야한다.
nums.sort(key=lambda x:(x[0],x[1]))

for i in nums: print(i[0],i[1])

💯 풀이 과정

1) 몇개를 받아오는지 숫자 입력을 t에 받는다

2) t 숫자만큼 반복문 반복하면서 좌표를 입력받는다. 리스트의 append로

3) 받아온 리스트에서 x,y 두개 기준로 정렬을 해야하므로 sort 함수안에 key 2개를 써준다.

4) 그다음 정렬해 온 리스트를 반복문으로 돌리면서 출력해준다.

 


😎 오늘의 한줄평

sort 함수의 숨은 기능에 대해 더 자세히 알아보게된 경험!

 

 

 

728x90