AT_tkppc4_1_p.Flip Cards
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
有一天,sanada 被 kaage 要求抽取 N 张卡牌。
sanada 按照要求抽取了卡牌。
每张卡牌的正反两面分别写有一个数字,且两面数字之和恒为 M。sanada 抽到的第 i 张卡牌正面上的数字为 Ai。
接下来,kaage 指示可以进行不超过 K 次(也可以不进行)的如下操作:
- 任选满足 1≤x≤y≤N 的整数 x,y,将第 x 张到第 y 张所有卡牌的正反面全部翻转。
sanada 觉得可疑,于是派间谍去 kaage 家,得知卡牌正面数字之和越大,kaage 就要学习得越多。
为了让 kaage 多学习,sanada 想知道通过适当次数和适当的操作,所有卡牌正面数字之和的最大值是多少。
输入格式
输入以如下格式从标准输入读入:
N M K
A1 A2 … AN
输出格式
输出通过适当次数和操作后,所有卡牌正面数字之和的最大值,输出一行。
输入输出样例
输入#1
3 6 13 3 4
输出#1
10
输入#2
8 9 21 3 8 7 5 3 5 1
输出#2
52
说明/提示
限制
- 输入均为整数。
- 1≤N≤106
- 0≤K≤N
- 1≤M≤109
- 1≤Ai≤M−1
小任务
本题包含 3 个小任务。
- (400 分) N≤2000
- (400 分) N≤105
- (300 分) 无额外限制。
注意
如果只针对小任务 1 编写代码,建议在 N>2000 时立即退出。
样例解释 1
在这种情况下,例如一次操作都不进行时,所有卡牌正面数字之和最大为 10。
样例解释 2
例如可以通过如下区间选择和操作,得到最大值 52。
- 第 1 次:翻转第 1 张到第 5 张卡牌。操作后卡牌为 {8, 6, 1, 2, 4, 3, 5, 1}。
- 第 2 次:翻转第 3 张到第 8 张卡牌。操作后卡牌为 {8, 6, 8, 7, 5, 6, 4, 8}。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?