编程题
### 问题描述 在蓝桥市,小新是一位知名的厨师,他的工作日程安排十分紧密,连续工作的日子往往都比较多。为了鼓励和奖励小新的辛勤工作,蓝桥市的餐饮协会决定对小新的薪酬进行一些特殊的调整。 小新每工作一天会得到 $X$ 元的工资,而连续工作的天数越多,他就可以获得额外的奖金。蓝桥市餐饮协会会检查小新连续工作的最长天数,并将这段时间的每一天作为奖金基数,每天额外发放 $Y$ 元。请你计算小新在一个月内可以得到的薪水总和(包括奖金)。 请注意,如果有两个或更多长度相同的最长连续工作时间,只有一个会被计算在奖金内。 ### 输入格式 输入的第一行包含一个整数 $T$ ,表示测试用例的数量。接下来是 $T$ 个测试用例。 每个测试用例的第一行包含两个整数 $X$ 和 $Y$。 第二行包含一个长度为 $30$ 的二进制字符串,其中 '0' 表示小新在那一天休假,'1' 表示小新在工作。 数据范围保证:$1 \leq T \leq 10^4$,$1 \leq X,Y \leq 999$,$|S|=30$。 ### 输出格式 对于每个测试用例,输出一行答案,即小新收到的薪水(包括奖金)。 ### 样例输入 ``` 3 6 3 111100110101100000101100011111 8 2 111010111101001010100100111101 5 6 011101010100101000001101000010 ``` ### 样例输出 ``` 117 152 78 ``` ### 说明 测试用例1:小新的实际工资为 $17 \times 6 = 102$ 元,最长连续工作时间为 5 天(最后 5 个工作日),所以奖金为 $5 \times 3 = 15$ 元。因此,小新的工资总额为 $102 + 15 = 117$ 元。 测试用例2:小新的实际工资为 $18 \times 8 = 144$ 元,最长连续工作时间为 4 天(这里有多个最长工作时间,所以公司选择其中的任何一个),所以奖金为 $4 \times 2 = 8$ 元。因此,小新的工资总额为 $144 + 8 = 152$ 元。
查看答案
赣ICP备20007335号-2