根据第一篇题解的part3不带优化的思路写的(没有照代码, 某神犇写游记里说看题解不要看代码), 题解说有80分, 这样例也全过了 但数据就WA
思路是枚举 i+1 -> i+k跳过的区间然后用1->n去减
#include <iostream>
#include <cstdio>
#define int long long
using namespace std;
const int maxn = 1e6+10;
const int inf = 0x7fffffff;
int n, a[maxn], k, ans=inf;
signed main() {
scanf("%lld %lld", &n, &k);
for(int i=1;i<n;i++) {
scanf("%lld", &a[i]);
}
int sum = 0;
for(int i=1;i<n;i++) {
sum+=a[i];
}
for(int i=1;i<n;i++) {
if(i+k-1<n) {
int insum=0;
for(int j=i;j<=i+k-1;j++) {
insum+=a[i];
}
ans=min(ans,sum-insum);
}
}
printf("%lld", ans);
return 0;
}