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 自动生成**