알고리즘

[LeetCode] The K Weakest Rows in Matrix

유병각 2022. 4. 23. 21:03

[LeetCode] The K Weakest Rows in Matrix

풀이_#1

두개의 요소를 기준으로 sort 하기.

class Solution(object):
    def kWeakestRows(self, mat, k):
        """
        :type mat: List[List[int]]
        :type k: int
        :rtype: List[int]
        """
        n = len(mat)
        m = len(mat[0])
        r = []

        for i in range(n):
            r.append([mat[i].count(1), i])

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

        return [r[_][1] for _ in range(k)]

풀이_#2

숏코딩

 class Solution(object):
    def kWeakestRows(self, mat, k):
        """
        :type mat: List[List[int]]
        :type k: int
        :rtype: List[int]
        """
        n = len(mat)

        return(sorted(range(n), key=lambda x: (sum(mat[x]), x)))[:k]