万网备案初审过了后网站能访问吗网上商城网站开发
力扣3381.长度可被K整除的子数组的最大元素和
题目
题目解析及思路
题目要求返回一段长度为K的倍数的最大子数组和
同余+前缀和
代码
class Solution {
public:long long maxSubarraySum(vector<int>& nums, int k) {int n = nums.size();vector<long long> sum(n + 1);for (int i = 0; i < n; i++) {sum[i + 1] = sum[i] + nums[i];}//存每个余数的最小值vector<long long> min_s(k, LLONG_MAX / 2);long long ans = LLONG_MIN;for (int j = 0; j < sum.size(); j++) {//取j的余数int i = j % k;ans = max(ans, sum[j] - min_s[i]);min_s[i] = min(min_s[i], sum[j]);}return ans;}
};