luogu#P11035. 【MX-X3-T2】「RiOI-4」消えた夏の夢

【MX-X3-T2】「RiOI-4」消えた夏の夢

题目背景

いつまでも二人語り合おう
終わった夏を
探してた夢をそっと
終わらせよう戻らないように
お別れだね
君へ届けと願った声が
風になって心の隙間を
通り抜けた
——《消えた夏の夢》

小 T 不会出题。

题目描述

小 T 手中有一个数 xx,初始时为 pp。而小 ⊥ 手中有一个长为 nn 的序列 aa。一次操作中,小 T 需要依次进行如下的修改:

  • 选中 aa 中的一个数 aia_i
  • xx 加上 aia_i
  • aia_i 变为自身的相反数,即 ai-a_i

小 T 想知道,在若干次操作(可以不进行操作,同一个位置可以选中多次)之后,小 T 手中的数 xx 最大是多少。

输入格式

第一行两个整数 n,pn,p

第二行 nn 个整数 aia_i

输出格式

输出一行仅一个整数,表示 xx 最大是多少。

6 3
1 1 -4 5 1 -4
11
7 4
1 -9 -1 -9 8 -1 0
13

提示

【样例解释 #1】

对于样例,你可以依次执行以下操作:

  • 选中 a5=1a_5=1xx 变为 3+1=43+1=4a5a_5 变为 1-1
  • 选中 a1=1a_1=1xx 变为 4+1=54+1=5a1a_1 变为 1-1
  • 选中 a3=4a_3=-4xx 变为 54=15-4=1a3a_3 变为 44
  • 选中 a4=5a_4=5xx 变为 1+5=61+5=6a4a_4 变为 5-5
  • 选中 a2=1a_2=1xx 变为 6+1=76+1=7a2a_2 变为 1-1
  • 选中 a3=4a_3=4xx 变为 7+4=117+4=11a3a_3 变为 4-4

可以证明 xx 的最大值为 1111。注意,并不是只有样例中展示的方案可以达到这个最大值。

【数据范围】

测试点编号 nn\le 特殊性质
131\sim3 2020
454\sim5 10510^5 ai<0a_i<0
676\sim7 ai0a_i\ge0
8108\sim10

对于 100%100\% 的数据,1n1051\le n\le10^5ai,p109|a_i|,|p|\le 10^9