[LeetCode] 973. K Closest Points to Origin

원숭2·2022년 2월 15일
0

LeetCode

목록 보기
48/51

문제

풀이

  1. 원점에서의 거리를 기존 좌표 값과 함께 res 배열에 넣어 줌.
    (루트를 씌우는게 공통되기 때문에 생략함.)
  2. 정렬한 후, map함수와 lambda식을 활용해서 거리 값을 제거해 줌.
  3. list slicing을 이용해서 결과값 return함.

코드

class Solution:
    def kClosest(self, points: List[List[int]], k: int) -> List[List[int]] :
        res = []
        for p in points :
            res.append((p, p[0] ** 2 + p[1] ** 2))
        
        res.sort(key = lambda x : x[1])
        
        res = list(map(lambda x : x[0], res))
        
        return res[:k]   

0개의 댓글