Leetcode—1423.可获得的最大点数【中等】
2023每日刷题(四十八)
Leetcode—1423.可获得的最大点数
思路:逆向求长为 n−k 的连续子数组和的最小值
参考灵茶山艾府题解
实现代码
class Solution {
public:
int maxScore(vector<int>& cardPoints, int k) {
int mins = 0, s = 0;
int n = cardPoints.size();
int m = n - k;
s = accumulate(cardPoints.begin(), cardPoints.begin() + m, 0);
mins = s;
for(int i = m; i < n; i++) {
s += cardPoints[i] - cardPoints[i - m];
mins = min(s, mins);
}
return accumulate(cardPoints.begin(), cardPoints.end(), 0) - mins;
}
};
运行结果
之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!