#P1114. 菜哭武的面试题
菜哭武的面试题
问题描述
新格尔公司的天才程序员菜哭武最近在担任面试官,他今天出了这样一个题目。给出一个长度为 的整数序列 ,现在要通过一些操作将这个序列修改为单调不降序列,即 。可以用的操作有 种,第 种操作可以通过支付 的代价将一段长度恰为 的连续子序列 或 (由对应的操作符确定是 还是 ,具体参考输入格式)。
不限制每种操作的使用次数,序列中的 可以被改为任意整数(可以是负数),求最小代价,无解输出 。
输入格式
第一行一个整数 ,表示有 组测试数据。()
然后每组有 行:
第一行,两个整数 ;()
第二行, 个整数 ()
接下来 行,每行格式为 空格隔开,其中 为一个字符,表示这种操作是 还是 。(,)
输出格式
对于每组数据,第一行输出 Case #x:
( 编号从 1 开始)。
第二行是一个整数,代表最小代价,若无解输出 。
样例输入
第一组输入:
2
3 2
3 2 1
+ 1 1
- 1 1
3 1
3 2 1
+ 2 1
第二组输入:
1
10 10
23 1 8 14 2 3 15 50 53 53
+ 4 6
- 1 10
+ 2 4
+ 4 2
- 3 5
+ 1 2
+ 3 2
+ 5 7
- 1 6
+ 4 5
样例输出
第一组输入:
Case #1:
2
Case #2:
-1
第二组输入:
Case #1:
96