#A1457. 升级大招

升级大招

题目描述

Timi在玩打怪游戏,他想升级自己的大招,但是在升级大招之前,他需要先升级11技能和22技能。

游戏中有nn只野怪,攻击第i只野怪需要花mim_i秒,然后获得经验,可以升级一些技能,可能是11技能,可能是22技能,可能是1122技能,也有可能一个都升级不了,这由一个长度为22的二进制字符串表示。

请你帮Timi计算升级大招所需的最少时间。

输入格式

第一行包含一个整数tt,表示测试用例的数量。

每个测试用例的第一行包含一个整数nn,表示野怪的数量。

每个测试用例接下来nn行,每行包含一个正整数mim_i,和一个长度为22的二进制字符串,其中si1=1s_{i1}=1代表Timi获得11技能,si1=0s_{i1}=0代表Timi没获得11技能,si2=1s_{i2}=1代表Timi获得22技能,si2=0s_{i2}=0代表Timi没获得22技能。

输出格式

对于每个测试用例,输出一个整数,表示Timi升级大招所需的最少时间,如果无论攻击多少只野怪,都无法升级大招,则输出-1。

4
4
2 00
3 10
4 01
4 00
5
3 01
3 01
5 01
2 10
9 10
1
5 11
6
4 01
6 01
7 01
8 00
9 01
1 00
7
5
5
-1

提示

【样例解释】

在第一个测试用例中,Timi可以攻击第22只野怪和第33只野怪,总共花费的时间为3+4=73+4=7

在第二个测试用例中,Timi可以攻击第11只野怪和第44只野怪,总共花费的时间为3+2=53+2=5

在第三个测试用例中,Timi只能攻击第11只野怪,总共花费的时间为55

【数据范围】

对于所有数据,保证:1t1000,1n,mi21051 \leq t \leq 1000,1 \leq n,m_i \leq 2\cdot 10^5。所有测试用例中nn的总和不超过21052\cdot10^5