插入乘号 | ||
---|---|---|
Time Limit: 1000 MS | Memory Limit: 1000 KB |
Description
给出N个1-9的数字 (v1,v2,…,vN), 不改变它们的相对位置, 在中间加入K个乘号和N-K-1个加号, 括号随便加, 使最终结果最大。因为乘号和加号一共就是N-1个,所以恰好每两个相邻数字之间都有一个符号。 例如: N=5, K=2,5个数字分别为1、2、3、4、5,可以进行如下运算: 1*2*(3+4+5)=24 1*(2+3)*(4+5)=45 (1*2+3)*(4+5)=45 等等.
Input
第一行输入M(M<=10)表示有M组数据。每组数据输入两整数N和K(N<=20, K<20), 接下来输入N个1-9的数字。
Output
输出M行正整数,第i行表示第i组数据的最大结果, 你可能需要用long long类型存储结果。
Sample Input
2 5 2 1 2 3 4 5 6 3 1 2 3 4 5 6
Sample Output
120 720