A85659.Alice 的奇妙子段

普及+/提高

通过率:0%

时间限制:1.00s

内存限制:128MB

题目描述

给定一个长度为 nn 的整数序列 a1,a2,,ana_1,a_2,\dots,a_n。你可以选择至多一次把某个连续子段 [l,r][l,r](要求 1lrn1\le l\le r\le n长度 (rl+1)L(r-l+1)\le L)中的每个数取相反数(乘以 1-1)。翻转完成后,在新序列上取一个非空连续子段,使其元素和尽可能大。

请你输出在最优选择下的最大子段和

输入格式

  • 第一行两个整数 n,Ln,L —— 序列长度与允许翻转的最大长度
  • 第二行 nn 个整数 a1,a2,,ana_1,a_2,\dots,a_n

输出格式

  • 输出一个整数,表示在至多一次、长度不超过 LL 的翻转后,序列的最大子段和。

输入输出样例

  • 输入#1

    5 2
    1 -4 3 -2 5

    输出#1

    11

说明/提示

说明

选择翻转子段 [2,2][2,2](长度 1L1\le L):序列变为 [1,4,3,2,5][1,4,3,-2,5],其最大子段和为 1+4+32+5=111+4+3-2+5=11

数据范围

  • 1n2×1051\le n\le 2\times 10^5
  • 0Ln0\le L\le n
  • ai109|a_i|\le 10^9
首页