三角形
题号:NC21727
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 254 M,其他语言508 M
64bit IO Format: %lld

题目描述

小明拥有n根木棍,他将这n根木棍放在桌子上排成一排,从左到右编号为1至n。
他想知道用这n根木棍能组成的周长最大的三角形的周长是多少,就在这时小红悄悄拿走了第i根木棍,现在他想知道用剩下的这n-1个木棍中的某三根能组成的周长最大的三角形的周长是多少。

输入描述:

第一行 包含一个整数t,表示测试用例的数量。
第二行 包含2个整数,第一个是n,,第二个是q,表示小红悄悄地拿走了q根木棍,每次拿走木棍的时候,她都会把之前拿走的木棍放回去(如果之前拿了木棍的话)。
第三行 包含了n个数,分别表示这n根木棍的长度
接下来 q行,每行一个整数,表示被拿走的木棍的编号。

输出描述:

对于每个测试用例,先打印一行“Case #x:”,不包含双引号,其中x是测试用例编号(从1开始),然后对于每个测试用例,输出q行,第i行表示第根木棍被拿走后,剩下的n-1根木棍能组成的周长最大的三角形的周长,如果不能组成三角形则输出-1.
示例1

输入

复制
1
6 2
1 2 3 4 5 6
6
5

输出

复制
Case #1:
12
13

备注:


,