#1455. 纸星星(star)
纸星星(star)
题目描述
小 C 很喜欢折纸星星。他有 个专门用于收集纸星星的收藏瓶,第 个收藏瓶的容量体积为 。
小 C 会折小星星和大星星,其中小星星的体积为 ,大星星的体积为 。这个时候,小 C 折了 颗纸星星,第 颗纸星星的体积为 ( 只可能为 或者 ),美观程度为 。
对于每个收藏瓶,现在小 C 向你提问:是否存在一种选法,使得能恰好装满整个收藏瓶(即所有选中纸星星的总体积等于 )?
如果存在,请告诉他所有可行方案中,瓶中纸星星的美观程度之和的最大值;否则请告诉小 C 不存在这样的选法(输出 -1)。
输入格式
本题包含多组测试数据。
第一行包含一个正整数 ,表示数据组数。
接下来依次描述每组数据。对于每组数据:
- 第一行包含两个正整数 和 —— 分别表示纸星星的个数和收藏瓶的个数。
- 第二行包含 个正整数 —— 依次表示每颗纸星星的体积大小。
- 第三行包含 个正整数 —— 依次表示每颗纸星星的美观程度。
- 第四行包含 个正整数 —— 依次表示每个收藏瓶的容量体积。
输出格式
输出共 行,依次表示每组数据的答案。
对于每组数据,输出一行 个整数,相邻整数之间用一个空格隔开。第 个整数表示:如果存在装满第 个收藏瓶的方案,输出美观程度之和的最大值;否则输出 -1。
样例输入 1
2
5 2
1 2 2 1 2
5 11 9 3 8
5 6
5 2
2 2 2 2 2
10 20 30 40 50
19 15
样例输出 1
25 28
-1 -1
样例输入 2
2
10 3
1 1 1 1 1 1 2 2 1 2
45 37 49 22 14 91 56 65 81 97
2 19 15
10 3
2 1 1 2 1 2 1 1 2 2
40 29 37 81 65 75 35 66 73 96
19 1 5
样例输出 2
172 -1 -1
-1 66 264
说明
样例解释
样例 不符合下方测试数据范围分布中的特殊限制,但可以演示问题的基本过程,实际测试数据保证符合下方的数据范围分布
- 在第一组数据中:
- 当 时,最优方案选择第 颗纸星星,此时美观程度之和为 。
- 当 时,最优方案选择第 颗纸星星,此时美观程度之和为 。
- 在第二组数据中:所有星星的体积都为偶数(均为 ),但是收藏瓶的体积为奇数( 和 ),因此无论如何也无法恰好装满,不存在合法的方案。
其它样例说明
- 样例 :见选手附加文件目录下的
star/star3.in和star/star3.ans。该组数据满足测试点 的条件。 - 样例 :见选手附加文件目录下的
star/star4.in和star/star4.ans。该组数据满足测试点 的条件。
数据范围
对于所有数据,保证:
- ,
- ,
- ,
- ,
- 。
保证所有的输入数值均为整数。
各测试点的附加限制如下表所示:
| 测试点编号 | 的取值 | 特殊性质 | ||
|---|---|---|---|---|
| 无 | ||||
| 均为偶数 | ||||
| 均为奇数 | ||||