[LeetCode] K Items With the Maximum Sum

2600. K Items With the Maximum Sum

There is a bag that consists of items, each item has a number 1, 0, or -1 written on it.

You are given four non-negative integers numOnes, numZeros, numNegOnes, and k.

The bag initially contains:

  • numOnes items with 1s written on them.
  • numZeroes items with 0s written on them.
  • numNegOnes items with -1s written on them.

We want to pick exactly k items among the available items. Return the maximum possible sum of numbers written on the items.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
class Solution {
public:
int kItemsWithMaximumSum(int numOnes, int numZeros, int numNegOnes, int k) {
int x = min(numOnes, k);
int res = x;
k -= x;
numOnes -= x;
x = min(numZeros, k);
k -= x;
x = min(numNegOnes, k);
res -= x;
return res;
}
};
Author: Song Hayoung
Link: https://songhayoung.github.io/2023/03/26/PS/LeetCode/k-items-with-the-maximum-sum/
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.