Compute's Collection
题号:NC221058
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

Compute 是个收集达人,他通过连续 n 天坚持每天吃干脆面收集了一些他喜爱的人物卡。特别的,他对第 i 张人物卡有 i 的满意度。

但我们都知道,收集到的卡片重复就失去了意义。于是 Compute 决定和妈妈们玩若干轮游戏,送出他手中多余的卡片,直到使得他手上的卡片都是不同的人物

游戏规则很简单,每轮由 Compute 任选出三张卡片,将满意度值最大与最小的卡片送给妈妈们,而自己保留中间剩下的那张。

Compute 很想知道自己手上卡片满意度的和最大为多少。请聪明的你帮帮他。

注意, n 一定是一个奇数,所以在游戏结束后 Compute 手上至少会剩下一张卡。

输入描述:

第一行有一个整数 T ,代表有 T 组测试数据。对于每组数据:

第一行有一个整数 n ,代表 Compute 共有 n 张卡片,保证 n 是一个奇数。

第二行有 n 个整数 ,分别表示 Compute 第 i 天拿到了 a_i 号人物的卡片。

保证

输出描述:

对于每组测试数据,在一行输出一个整数,代表 Compute 能获得的最大的满意度的和。
示例1

输入

复制
2
3
1 2 3
5
1 3 3 3 2

输出

复制
6
6