力扣668.乘法表中第k小的数 二分查找 是否有k个比mid小的数 class Solution {public:int findKthNumber(int m, int n, int k) {auto check = [&](int mid) -> bool{int res=0;int row = 1,col = n;while(row <= m){if(row * col <= mi
花花酱 class Solution {public:int findKthNumber(int m, int n, int k) {int l = 1, r = m*n;while(l < r){int mid = l + (r -l)/2;if(les(m, n, mid) >= k) r = mid;else l = mid + 1;}return l;}int les(int m, i
乘法表中第k小的数 题目 思路 利用乘法表递增性,进行类二分。 代码 class Solution {public:int findKthNumber(int m, int n, int k) {int l=1,r=m*n;while(l<r){int mid=l+(r-l)/2,cnt=0;for(int i=1;i<=m;i++)cnt+=min(mid/i,n);if(k>