class Solution {
public:
int maxScore(vector<int>& cardPoints, int k) {
int current_sum = 0;
int n = cardPoints.size();
for (int i = 0; i < n - k; i++)
{
current_sum += cardPoints[i];
}
int total_sum = 0;
for (int i = 0; i < n;i++)
{
total_sum += cardPoints[i];
}
int min_sum = current_sum;
int left = 0, right = n - k - 1;
while (right < n - 1)
{
left++;
right++;
current_sum += cardPoints[right] - cardPoints[left - 1];
min_sum = min(current_sum, min_sum);
}
return total_sum - min_sum;
}
};
LeetCode1423. 可获得的最大点数
最新推荐文章于 2024-08-23 03:02:50 发布