AT_tkppc4_1_p.Flip Cards

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

有一天,sanada 被 kaage 要求抽取 NN 张卡牌。
sanada 按照要求抽取了卡牌。
每张卡牌的正反两面分别写有一个数字,且两面数字之和恒为 MM。sanada 抽到的第 ii 张卡牌正面上的数字为 AiA_i。

接下来,kaage 指示可以进行不超过 KK 次(也可以不进行)的如下操作:

  • 任选满足 1≤x≤y≤N1 \leq x \leq y \leq N 的整数 x,yx, y,将第 xx 张到第 yy 张所有卡牌的正反面全部翻转。

sanada 觉得可疑,于是派间谍去 kaage 家,得知卡牌正面数字之和越大,kaage 就要学习得越多。
为了让 kaage 多学习,sanada 想知道通过适当次数和适当的操作,所有卡牌正面数字之和的最大值是多少。

输入格式

输入以如下格式从标准输入读入:

NN MM KK
A1A_1 A2A_2 …\ldots ANA_N

输出格式

输出通过适当次数和操作后,所有卡牌正面数字之和的最大值,输出一行。

输入输出样例

  • 输入#1

    3 6 13 3 4

    输出#1

    10
  • 输入#2

    8 9 21 3 8 7 5 3 5 1

    输出#2

    52

说明/提示

限制

  • 输入均为整数。
  • 1≤N≤1061 \leq N \leq 10^6
  • 0≤K≤N0 \leq K \leq N
  • 1≤M≤1091 \leq M \leq 10^9
  • 1≤Ai≤M−11 \leq A_i \leq M-1

小任务

本题包含 33 个小任务。

  1. (400 分) N≤2000N \leq 2000
  2. (400 分) N≤105N \leq 10^5
  3. (300 分) 无额外限制。

注意

如果只针对小任务 11 编写代码,建议在 N>2000N > 2000 时立即退出。

样例解释 1

在这种情况下,例如一次操作都不进行时,所有卡牌正面数字之和最大为 1010。

样例解释 2

例如可以通过如下区间选择和操作,得到最大值 5252。

  • 第 11 次:翻转第 11 张到第 55 张卡牌。操作后卡牌为 {8, 6, 1, 2, 4, 3, 5, 18,\ 6,\ 1,\ 2,\ 4,\ 3,\ 5,\ 1}。
  • 第 22 次:翻转第 33 张到第 88 张卡牌。操作后卡牌为 {8, 6, 8, 7, 5, 6, 4, 88,\ 6,\ 8,\ 7,\ 5,\ 6,\ 4,\ 8}。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页