668. Kth Smallest Number in Multiplication Table
2018-03-04 10:32
295 查看
Nearly every one have used the Multiplication Table. But could you find out the k-th smallest number quickly from the multiplication table?
Given the height m and the length n of a m * n Multiplication Table, and a positive integer k, you need to return the k-th smallest number in this table.
Example 1:
Example 2:
Note:
The m and n will be in the range [1, 30000].
The k will be in the range [1, m * n]
Given the height m and the length n of a m * n Multiplication Table, and a positive integer k, you need to return the k-th smallest number in this table.
Example 1:
Input: m = 3, n = 3, k = 5 Output: Explanation: The Multiplication Table: 1 2 3 2 4 6 3 6 9 The 5-th smallest number is 3 (1, 2, 2, 3, 3).
Example 2:
Input: m = 2, n = 3, k = 6 Output: Explanation: The Multiplication Table: 1 2 3 2 4 6 The 6-th smallest number is 6 (1, 2, 2, 3, 4, 6).
Note:
The m and n will be in the range [1, 30000].
The k will be in the range [1, m * n]
class Solution { public boolean enough(int x, int m, int n, int k) { int count = 0; for (int i = 1; i <= m; i++) { count += Math.min(x / i, n); } return count >= k; } public int findKthNumber(int m, int n, int k) { int lo = 1, hi = m * n; while (lo < hi) { int mi = lo + (hi - lo) / 2; if (!enough(mi, m, n, k)) lo = mi + 1; else hi = mi; } return lo; } }
相关文章推荐
- LeetCode 668: Kth Smallest Number in Multiplication Table
- [leetcode] 668 Kth Smallest Number in Multiplication Table
- 668[Hard]:Kth Smallest Number in Multiplication Table
- Kth Smallest Number in Multiplication Table
- [LeetCode] Kth Smallest Number in Multiplication Table 乘法表中的第K小的数字
- LeetCode hard 668. Kth Smallest Number in Multiplication Table(二分答案,一次过了,好开心,哈哈哈哈)
- 668. Kth Smallest Number in Multiplication Table
- [Leetcode] 668. Kth Smallest Number in Multiplication Table 解题报告
- [leetcode]668. Kth Smallest Number in Multiplication Table
- 668. Kth Smallest Number in Multiplication Table
- 668. Kth Smallest Number in Multiplication Table
- leetcode题解-668. Kth Smallest Number in Multiplication Table
- LeetCode 668. Kth Smallest Number in Multiplication Table
- leetcode 668. Kth Smallest Number in Multiplication Table 有序矩阵搜索 + 右上角二分搜索
- leetcode_668. Kth Smallest Number in Multiplication Table ? 待解决
- LintCode Kth Smallest Number in A Unsorted Array
- Lintcode401 Kth Smallest Number in Sorted Matrix solution 题解
- Lintcode: Kth Smallest Number in Sorted Matrix
- [Lintcode] Kth Smallest Number in Sorted Matrix
- Kth Smallest Number in Sorted Matrix