#L0429. 区间替换求最大和

区间替换求最大和

题目描述

给定一个由 nn 个正整数构成的数列 a1,a2,…,ana_1, a_2, \dots, a_n 和一个整数 xx。

你可以至多进行一次操作:选择一对正整数 1≤l≤r≤n1 \le l \le r \le n,然后将数列中第 ll 到第 rr 个位置的所有数都变为 xx。

操作完成后,求数列所有数之和的最大值。

输入格式

第一行两个非负整数 nn 和 xx。

第二行 nn 个正整数 a1,a2,…,ana_1, a_2, \dots, a_n,用空格隔开。

输出格式

仅一行一个正整数,表示数列所有数之和的最大值。

样例

5 2
1 4 1 1 5
14
7 3
1 1 4 5 1 4 1
21
1 197
251
251

提示

【样例解释 #1】

选择 l=3,r=4l=3, r=4 进行操作,数列变为 [1,4,2,2,5][1,4,2,2,5],总和为 1414。

【样例解释 #2】

选择 l=1,r=7l=1, r=7 进行操作,所有数变为 33,总和为 2121。

【样例解释 #3】

不进行操作,总和为 251251。

【数据范围】

对于 30%30\% 的数据,n≤500n \le 500。

对于另外 20%20\% 的数据,n≤3×103n \le 3 \times 10^3。

对于另外 10%10\% 的数据,x=0x=0。

对于所有数据,1≤n≤1051 \le n \le 10^5,1≤ai≤1091 \le a_i \le 10^9,0≤x≤1090 \le x \le 10^9。

难度 普及-
通过率 —
尝试 0
通过 0
ID
1157
类型
传统题
Time Limit
2000ms
Memory Limit
512MiB
上传者