100일 DSA 코딩 챌린지 Day 84

발행: (2025년 12월 27일 오후 01:39 GMT+9)
1 min read
원문: Dev.to

Source: Dev.to

Problem

GeeksforGeeks – Kth smallest element in a Matrix

Difficulty: Medium | Accuracy: 61.42%

주어진 mat[][] 행렬은 크기가 n × n이며, 각 행과 각 열이 비내림차순으로 정렬되어 있습니다. 행렬에서 k번째로 작은 원소를 찾아라.

Solution

class Solution:
    def kthSmallest(self, mat, k):
        n = len(mat)
        low, high = mat[0][0], mat[-1][-1]

        while low < high:
            mid = (low + high) // 2
            count = 0

            # Count elements ≤ mid in each row using binary search
            for row in mat:
                l, r = 0, n
                while l < r:
                    m = (l + r) // 2
                    if row[m] <= mid:
                        l = m + 1
                    else:
                        r = m
                count += l

            if count < k:
                low = mid + 1
            else:
                high = mid

        return low
Back to Blog

관련 글

더 보기 »

100일 DSA 코딩 챌린지 중 Day 85

챌린지 개요: 새로운 도전에 도전하기: GeeksforGeeks POTD를 매일 풀고 내 솔루션을 공유합니다! 💻🔥 문제: 모든 주문을 처리하는 최소 시간 Geeksfor…

100일 DSA 코딩 챌린지의 82일

문제: 2D Matrix에서 Peak Element 찾기 GeeksforGeeks 문제 링크: https://www.geeksforgeeks.org/problems/find-the-peak-element-in-a-2d-matrix/1 난이도…

100일 DSA 코딩 챌린지의 78일차

새로운 도전에 도전합니다: GeeksforGeeks POTD를 매일 풀고 내 솔루션을 공유합니다! 💻🔥 목표: 문제 해결 능력을 갈고닦고, 코딩 실력을 레벨업하며, 배우는 것.

100일 DSA 코딩 챌린지의 76일

문제 버스 콘덕터 – GeeksforGeeks https://www.geeksforgeeks.org/problems/bus-conductor--170647/1 난이도: Easy 정확도: 75.3% 예제 예제 1 - 입력...