问题描述 |
---|
给定一个由$$()[]$$括号组成的字符串$$S$$ 从形式上讲,只有满足下面几点之一,括号字符串才是合法的: 1、空串 2、如果一个串$$S$$是合法的,那么$$(S)$$、$$[S]$$也是合法的 3、如果$$a$$和$$b$$是合法的,那么$$ab$$也是合法的
4、如果把该串首尾相连后满足前三条,那么也认为是合法的 下面几个串是合法的: () ][ (()) )([] ()[()] 下面几个串是不合法的: ( ] )(] ([)] ([(] 给出一个括号串,你需要通过以下三种操作把这个串修复成合法串。 1、添加一个独立的括号,代价为$$a$$ 2、删除一个独立的括号,代价为$$b$$ 请你输出把这个串修复成合法串的最小代价。 |
输入描述 |
第一行是一个正整数$$T$$表示测试案例的数量。($$1 \le T \le 100$$) 每组案例先是三个正整数$$a,b$$表示添加和删除括号的代价。($$1 \le a,b \le 100$$) 然后是一个长度不超过$$100$$的括号串。 |
输出描述 |
针对每组样例,在一行中输出把这个串修复成合法串的最小代价。 |
样例输入复制样例 |
2 1 2 ( 3 2 )]([ |
样例输出 |
1 4 |
相关 |