本文主要是介绍668. Kth Smallest Number in Multiplication Table,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
花花酱
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, int n, int x){int count = 0;for(int i = 1; i <= m; i++){count += min(n, x/i); //根据乘法表的特性 第一行1 2 3 4 5 6 7 }return count;}
};
这篇关于668. Kth Smallest Number in Multiplication Table的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!