CF1832B.Maximum Sum

普及-

通过率:0%

时间限制:2.00s

内存限制:256MB

AC君温馨提醒

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

题目描述

You are given an array a1,a2,…,ana_1, a_2, \dots, a_n, where all elements are different.

You have to perform exactly kk operations with it. During each operation, you do exactly one of the following two actions (you choose which to do yourself):

  • find two minimum elements in the array, and delete them;
  • find the maximum element in the array, and delete it.

You have to calculate the maximum possible sum of elements in the resulting array.

给你一个数组 a1,a2,…,ana_1, a_2, \dots, a_n,其中所有元素互不相同。

你需要对该数组恰好执行 kk 次操作。每次操作中,你必须且仅能执行以下两种操作之一(由你自行选择):

  • 找出数组中两个最小的元素,并将它们删除;
  • 找出数组中最大的元素,并将它删除。

你需要计算最终剩余数组中元素之和的最大可能值。

输入格式

The first line contains one integer tt (1≤t≤1041 \le t \le 10^4) — the number of test cases.

Each test case consists of two lines:

  • the first line contains two integers nn and kk (3≤n≤2⋅1053 \le n \le 2 \cdot 10^5; 1≤k≤999991 \le k \le 99999; 2k<n2k \lt n) — the number of elements and operations, respectively.
  • the second line contains nn integers a1,a2,…,ana_1, a_2, \dots, a_n (1≤ai≤1091 \le a_i \le 10^9; all aia_i are different) — the elements of the array.

Additional constraint on the input: the sum of nn does not exceed 2⋅1052 \cdot 10^5.

第一行包含一个整数 tt(1≤t≤1041 \le t \le 10^4)—— 表示测试用例的数量。

每个测试用例由两行组成:

  • 第一行包含两个整数 nn 和 kk(3≤n≤2⋅1053 \le n \le 2 \cdot 10^5;1≤k≤999991 \le k \le 99999;2k<n2k \lt n)—— 分别表示数组元素个数和操作次数;
  • 第二行包含 nn 个整数 a1,a2,…,ana_1, a_2, \dots, a_n(1≤ai≤1091 \le a_i \le 10^9;所有 aia_i 互不相同)—— 表示数组的元素。

输入的额外约束:所有测试用例中 nn 的总和不超过 2⋅1052 \cdot 10^5。

输出格式

For each test case, print one integer — the maximum possible sum of elements in the resulting array.

对于每个测试用例,输出一个整数——结果数组中元素的最大可能和。

输入输出样例

  • 输入#1

    6
    5 1
    2 5 1 10 6
    5 2
    2 5 1 10 6
    3 1
    1 2 3
    6 1
    15 22 12 10 13 11
    6 2
    15 22 12 10 13 11
    5 1
    999999996 999999999 999999997 999999998 999999995

    输出#1

    21
    11
    3
    62
    46
    3999999986

说明/提示

In the first testcase, applying the first operation produces the following outcome:

  • two minimums are 11 and 22; removing them leaves the array as [5,10,6][5, 10, 6], with sum 2121;
  • a maximum is 1010; removing it leaves the array as [2,5,1,6][2, 5, 1, 6], with sum 1414.

2121 is the best answer.

In the second testcase, it's optimal to first erase two minimums, then a maximum.

在第一个测试用例中,执行第一种操作得到如下结果:

  • 两个最小值为 11 和 22;移除它们后,数组变为 [5,10,6][5, 10, 6],其元素和为 2121;
  • 一个最大值为 1010;移除它后,数组变为 [2,5,1,6][2, 5, 1, 6],其元素和为 1414。

2121 是最优答案。

在第二个测试用例中,最优策略是先移除两个最小值,再移除一个最大值。

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

首页