Maximum Product After K Increments LeetCode solution in C++
1class Solution {2public:3int maximumProduct(vector<int> &nums, int k) {4priority_queue<int, vector<int>, greater<int>> pq(nums.begin(), nums.end());56while (k--) {7int mini = pq.top();8pq.pop();9pq.push(mini + 1);10}1112long long ans = 1, mod = 1e9 + 7;1314while (!pq.empty()) {15ans = ((ans % mod) * (pq.top() % mod)) % mod;16pq.pop();17}1819return (int)ans;20}21};