帮我看看代码哪里有问题
#include<bits/stdc++.h>
using namespace std;
const int N=1e6+5;
int n,k,a[N],b[N],xx;
int main(){
scanf("%d%d",&n,&k);
for(int i=1;i<=n;i++){
scanf("%d",&a[i]);
b[i]=b[i-1]+a[i];
}
for(int i=1;i<=n-k+1;i++){
int x=b[i+k-1]-b[i-1];
xx=max(xx,x);
}
if(b[n]-xx<0)cout<<0,exit(0);
if(k>=n)printf(0),exit(0);
cout<<b[n]-xx;
return 0;
}
注:这是前缀和,dp解法