最大子序列和模板 用单调队列

最大子序列和模板 用单调队列

    #include
    #include
    #include
    using namespace std;
    const int N=300100;
    int sum[N];
    int ans=-N;
    int q[N];
    int main()
    {int n,m;
    cin>>n>>m;
    for(int i=1;i<=n;i++)
    {
        cin>>sum[i];
        sum[i]+=sum[i-1];
    }
    int l=1,r=1;
    for(int i=1;i<=n;i++)
    {
        while(l<=r&&q[l]=sum[i])r--;
        q[++r]=i;
    }
        cout<

你可能感兴趣的:(最大子序列和模板 用单调队列)