前缀和
2025-11-01 17:30:52
发布于:四川
#include<bits/stdc++.h>
using namespace std;
int a[500005], s[500005]; // 将s数组大小改为与a相同
int main(){
int n, m;
cin >> n >> m;
for(int i = 1; i <= n; i++){
cin >> a[i];
s[i] = s[i-1] + a[i]; // 可以在输入时直接计算前缀和
}
int b = 1, e = m, res =-1;
for(int i = m; i <= n; i++){
int k = s[i] - s[i - m];
if(k > res){
res = k;
b = i - m + 1;
e = i;
}
}
cout << res << endl;
cout << b << " " << e;
return 0;
}
这里空空如也







有帮助,赞一个