题目描述
【题目描述】
在地区比赛期间,一家受欢迎的快餐店的加拿大分店通常会举办一场比赛来推广其业务。某些食物会提供贴纸,收集不同的贴纸可以转换成现金奖励。如果奖品要求贴纸类型T1,T2,…,Tk,如果你有T1,T2,…,Tk类型的贴纸1张,你就可以领取奖品。每张贴纸只可领取一个奖品。但是,如果您有多个相同类型的贴纸,您可以多次领取奖品。没有两个奖品需要相同类型的贴纸。可能有一些贴纸不能用于领取现金奖励(例如免费奶昔的贴纸)。
在你去参加比赛的路上,你的教练强迫你在这家餐馆吃饭,并把所有的贴纸收集在一起。你的教练可以获得多少现金?
【输入】
输入由多个测试用例组成。输入的第一行是一个整数t(t≤1000)表示接下来的测试用例的数量。每个测试用例都以包含两个整数n (1≤n≤10)和m (1≤m≤30),其中n是不同类型奖品的数量,m是不同类型贴纸的数量(这些类型被标记为1,2,…,m)。接下来的n行指定奖品。每一行都以整数k (1≤k≤m)开头,指定领取奖品所需的贴纸类型的数量。后面是k个整数,指定所需贴图的类型。每行的最后一个整数是奖金的(正)现金值(最多1000000)。每种情况的最后一行给出m个非负整数,第i个整数表示教练收集的i型贴纸的数量。每款贴纸不超过100张。
【输出】
对于每个测试用例,输出一行表示领取的现金奖励的总价值。
【输入样例1】
3
2 10
3 1 2 3 100
4 4 5 6 7 200
2 3 1 4 5 2 2 1 3 4
3 6
2 1 2 100
3 3 4 5 200
1 6 300
1 2 3 4 5 6
3 6
2 1 2 100
3 3 4 5 200
1 6 300
1 2 0 4 5 6
【输出样例1】
500
2500
1900
样例输入 复制
3
2 10
3 1 2 3 100
4 4 5 6 7 200
2 3 1 4 5 2 2 1 3 4
3 6
2 1 2 100
3 3 4 5 200
1 6 300
1 2 3 4 5 6
3 6
2 1 2 100
3 3 4 5 200
1 6 300
1 2 0 4 5 6
样例输出 复制
500
2500
1900