K-th Smallest Prime Fraction LeetCode solution in C++

1
class Solution {
2
public:
3
vector<int> kthSmallestPrimeFraction(vector<int> &arr, int k) {
4
priority_queue<pair<double, pair<int, int>>, vector<pair<double, pair<int, int>>>,
5
greater<pair<double, pair<int, int>>>>
6
myHeap;
7
for (int i = 0; i < arr.size(); ++i) {
8
for (int j = i + 1; j < arr.size(); ++j) {
9
myHeap.push({(double)arr[i] / (double)arr[j], {arr[i], arr[j]}});
10
// Add all pair of numbers in the heap
11
}
12
}
13
for (int i = 1; i < k; ++i) {
14
myHeap.pop();
15
}
16
return {myHeap.top().second.first, myHeap.top().second.second};
17
}
18
};
19
// Time : O(n^2 + klogn)
20
// Space : O(m^2)

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0