这道题其实就是一道前缀和题,水壶中的水不可能是负数,所以就是求长度为k+1的前缀和中的最大值.至于为什么不是k而是k+1嘛,就是加上中间的水壶。最后附上伪代码:
#include<bits/stdc++.h>
#define N 1000005
#define M 100005
#define int long long
using namespace std;
//定义变量
signed main()
{
//输入
for(int i=1;i<=n;i++)
{
cin>>t;
//求前缀和
}
for(int i=1,j=/*长度*/;j<=n;i++,j++)
{
//求前缀和中的最大值
}
//输出
return 0;
}