来练习一下C++ 不然真的要生锈了
刚好今天题目比较简单 用maxheap装题目测资
之后一直pop一直加就好了 时间复杂度O(N)
class Solution {
public:
long long maxKelements(vector<int>& nums, int k) {
long long int sum = 0;
priority_queue<long long int> n;
// O(n)
for (const int& i : nums)
n.push(i);
// O(k logn)
while (k) {
double temp = n.top();
sum += temp;
n.pop();
n.push(ceil(temp / 3));
k -= 1;
}
return sum;
}
};
一二三四五