본문 바로가기
코딩테스트/파이썬

[백준] 좌표 정렬하기2 11651 (파이썬)

by 커피는아아 2021. 3. 9.
반응형

람다 표현식과 key를 알고 있다면 풀수 있는 문제였다.

정렬에서 key의 의미

# key 매개변수 입력 key값으로는 함수가 들어가야 하며 이는 정렬 기준이 된다.

# key 값은 람다(lambda 함수를 사용할 수 도 있다)

array= [('바나나',2), ('사과',5), ('당근',3)]

def setting(data):
		return data[1]

result = sorted(array, key=setting)
print(result)

람다 표현식(Lambda Express)

  • 특정한 기능을 수행하는 함수를 한 줄에 작성할 수 있다
  • 람다식은 파이썬의 정렬 라이브러리를 사용할 때, 정렬 기준(Key)을 설정할 때에도 자주 사용한다.
def add(a, b):
		return a + b

print(add(3,7))

# 람다 표현식으로 구현한 add() 메서드
print( (lambda a, b: a + b)(3,7) )

풀이

n = int(input())
array = []
for _ in range(n):
    x = tuple(map(int, input().split()))
    array.append(x)

array.sort(key = lambda x: (x[1], x[0]))

for x in array:
    print(x[0], x[1])

스케치