SP15649 NWERC05 - Unequalled Consumption
题目描述
糖果制造商协会正在酝酿推出一款新产品。虽然这个想法并不新颖,但它加了一点新意:他们计划销售糖果盒。然而,因为人们通常根据所消费的物品来定位自己的身份,而如今每个人都追求独特性,ACM 希望每个糖果盒的糖果组合都与众不同,即没有两个盒子有相同的糖果类型组合。
虽然 ACM 只能制作有限数量的 $n$ 种糖果类型,但在资源上几乎没有限制,因此每种糖果类型都能生产任意数量。不同的糖果类型具有不同的重量(有些可能相同),为了简化定价问题,ACM 希望所有糖果盒的总重量相同。
在这些限制下,ACM 只能制作有限数量的糖果盒。例如,假设有三种糖果,它们的重量分别为 5 克、5 克和 10 克,那么可以制作出 4 种不同组合的糖果盒,重量恰好是 10 克(可以用两个重量为 5 克的第一种糖果,或两个重量为 5 克的第二种糖果,或一个重量为 10 克的第三种糖果,或者各用一个第一种和第二种糖果)。ACM 希望能够为宇宙中的每个人至少提供一个糖果盒。因此,给定的查询是宇宙中人数 $P$,你的任务就是计算出能够装配 $P$ 个不同糖果盒的最小可能总重量 $w$。
输入格式
输入由多个数据集组成(最多 20 个)。每个数据集包含四行:
1. 第一行是一个整数 $1 \le n \le 5$,表示糖果种类数。
2. 第二行有 $n$ 个整数,表示每种糖果的重量(单位:克),重量在 1 到 100 之间。
3. 第三行是一个整数 $1 \le q \le 10$,表示查询次数。
4. 接下来的 $q$ 行,每行有一个整数 $P_j$,代表宇宙中的人数,范围在 1 到 $10^{12}$ 之间。
输出格式
对于第 $i$ 个数据集,输出如下格式:
```
Set i
```
接着是 $q$ 行,每行给出对于每个查询 $P_j$,能制作至少 $P_j$ 个糖果盒的最小可能正重量 $W_j$(单位:克)。如果不存在这样的重量 $W_j$,使得可以制作出至少 $P_j$ 个糖果盒,则输出「no candy for you」。可以假定,如果 $W_j$ 存在,它将不会超过 $100 \cdot P_j$。
说明/提示
- 糖果种类数 $1 \le n \le 5$
- 糖果重量 $1 \le w_i \le 100$
- 查询次数 $1 \le q \le 10$
- 人数 $1 \le P_j \le 10^{12}$
- 如果存在 $W_j$,那么 $W_j$ 将不超过 $100 \cdot P_j$。
**输入**
```
3
5 5 10
1
4
4
3 1 4 2
2
142 700
1
10
1
100
0
```
**输出**
```
Set 1
10
Set 2
23
42
Set 3
no candy for you
```
**本翻译由 AI 自动生成**