Skip to content

Commit fa8ffd5

Browse files
authored
Update maximum-product-after-k-increments.cpp
1 parent cd3927a commit fa8ffd5

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

C++/maximum-product-after-k-increments.cpp

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,13 +52,15 @@ class Solution2 {
5252
++cnt[x];
5353
min_num = min(min_num, x);
5454
}
55-
for (; k; --k) {
56-
--cnt[min_num];
57-
++cnt[min_num + 1];
55+
while (k) {
56+
const auto c = min(cnt[min_num], k);
57+
cnt[min_num] -= c;
58+
cnt[min_num + 1] += c;
5859
if (!cnt[min_num]) {
5960
cnt.erase(min_num);
6061
++min_num;
6162
}
63+
k -= c;
6264
}
6365
return accumulate(cbegin(cnt), cend(cnt), 1ull,
6466
[=](const auto& total, const auto& x) {

0 commit comments

Comments
 (0)