CF1930A.Maximise The Score

传统题 时间 2000 ms 内存 256 MiB 3 尝试 1 已通过 1 标签

Maximise The Score

题目描述

白板上写有 2n2n 个正整数。你感到无聊,决定用白板上的数字玩一个单人游戏。

你从 00 分开始。你将通过以下操作恰好进行 nn 次来增加你的得分:

  • 选择白板上的两个整数 xxyy
  • min(x,y)\min(x, y) 加到你的得分上。
  • 从白板上擦除 xxyy

注意,执行 nn 次操作后,白板上将不再有任何整数。

如果你每一步都最优地选择,求你能获得的最大最终得分。

输入格式

每组测试包含多组测试数据。第一行包含一个整数 tt1t50001 \leq t \leq 5000),表示测试用例的数量。接下来是每组测试数据的描述。

每组测试数据的第一行包含一个整数 nn1n501 \leq n \leq 50),表示白板上写有 2n2n 个整数。

第二行包含 2n2n 个整数 a1,a2,,a2na_1, a_2, \ldots, a_{2n}1ai1071 \leq a_i \leq 10^7),表示白板上的数字。

输出格式

对于每组测试数据,输出你能获得的最大最终得分。

说明/提示

在第一个测试用例中,你只能进行一次操作。你选择 x=2x=2y=3y=3,你的得分将是 min(x,y)=2\min(x, y)=2

在第二个测试用例中,以下是一组能获得最终得分 22 的操作顺序:

  • 第一次操作,选择 x=1x=1y=1y=1,然后将 min(x,y)=1\min(x, y)=1 加到得分上。擦除 xxyy 后,白板上剩下 1122
  • 第二次操作,选择 x=1x=1y=2y=2,然后将 min(x,y)=1\min(x, y)=1 加到得分上。擦除 xxyy 后,白板上不再有数字。

可以证明无法获得大于 22 的得分。在第三个测试用例中,你将进行三次操作,每次都加 11 到得分上。

由 ChatGPT 4.1 翻译

样例

3
1
2 3
2
1 1 2 1
3
1 1 1 1 1 1
2
2
3

在线编程 IDE

建议全屏模式获得最佳体验