P13030 [GCJ 2021 #1B] Subtransmutation

题目描述

作为国内最顶尖的炼金术士,你再次被征召,因为需要超越科学的力量来满足国家领袖对稀有金属日益增长的贪婪需求。 每种金属用一个正整数表示。你需要制造 $\mathbf{U}_{1}$ 个单位的 1 号金属,$\mathbf{U}_{2}$ 个单位的 2 号金属,……,以及 $\mathbf{U}_{\mathrm{N}}$ 个单位的 $\mathrm{N}$ 号金属。$\mathrm{N}+1$, $\mathrm{N}+2$, …… 号金属也存在,但你不需要制造特定数量的它们。你可以制造任何金属的过量单位,这些多余的金属可以直接丢弃。 不幸的是,预算削减让你只剩下施展一个简单炼金法术的材料。对于固定的数字 $\mathbf{A}$ 和 $\mathbf{B}$($\mathbf{A}

输入格式

输入的第一行包含测试用例的数量 $\mathbf{T}$。随后是 $\mathbf{T}$ 个测试用例。每个测试用例包含两行: - 第一行包含三个整数 $\mathbf{N}$、$\mathbf{A}$ 和 $\mathbf{B}$,分别表示你需要制造的金属的最大编号,以及定义可用法术的两个参数。 - 第二行包含 $\mathbf{N}$ 个整数 $\mathbf{U}_{1}, \mathbf{U}_{2}, \ldots, \mathbf{U}_{\mathbf{N}}$,表示对 1 号、2 号、……、$\mathbf{N}$ 号金属的需求量。

输出格式

对于每个测试用例,输出一行 `Case #x: y`,其中 $x$ 是测试用例编号(从 1 开始),$y$ 是 IMPOSSIBLE(如果无法从 1 个单位的某种金属开始制造所有所需金属),否则 $y$ 是最小的金属编号,使得从它的 1 个单位出发可以制造所有所需金属。

说明/提示

**样例解释** 在样例 #1 中,我们需要 1 个单位的 1 号金属和 2 个单位的 2 号金属。如果从 1 个单位的 3 号金属开始,施用一次法术会得到 1 个单位的 1 号金属和 1 个单位的 2 号金属,无法再获得额外的 2 号金属。类似地,从 1 号或 2 号金属开始也不够。但如题目描述中的图示所示,从 4 号金属开始可以满足需求。 在样例 #2 中,我们可以从 1 个单位的 6 号金属开始,进行以下操作: * 对 6 施法:$\{6\} \to \{4,5\}$ * 对 4 施法:$\{4,5\} \to \{2,3,5\}$ * 对 2 施法:$\{2,3,5\} \to \{1,3,5\}$ * 对 3 施法:$\{1,3,5\} \to \{1,1,2,5\}$ 虽然会多出 2 号金属,但这个解是有效的。 在样例 #3 中,我们可以从 5 号金属开始: * 对 5 施法:$\{5\} \to \{3,4\}$ * 对 4 施法:$\{3,4\} \to \{2,3,3\}$ * 对 2 施法:$\{2,3,3\} \to \{1,3,3\}$ * 对 3 施法:$\{1,3,3\} \to \{1,1,2,3\}$ 其他操作方式也可以满足需求,但都需要从 5 号或更高编号的金属开始。 样例测试集 2 符合测试集 2 的限制。它不会用于测试你的提交。 在测试集 2 的第一个样例中,无法从任何金属的 1 个单位出发,通过 $\mathbf{A}=2$、$\mathbf{B}=4$ 的法术操作得到 1 个单位的 1 号、2 号和 3 号金属。 **数据范围** - $1 \leq \mathbf{T} \leq 100$ - $1 \leq \mathbf{N} \leq 20$ - 对所有 $i$,$0 \leq \mathbf{U}_{\mathbf{i}} \leq 20$ - $1 \leq \mathbf{U}_{\mathbf{N}}$ - $2 \leq \mathbf{U}_{1}+\mathbf{U}_{2}+\cdots+\mathbf{U}_{\mathbf{N}}$ **测试集 1(13 分,可见评测结果)** - $\mathbf{A}=1$ - $\mathbf{B}=2$ **测试集 2(18 分,隐藏评测结果)** - $1 \leq \mathbf{A}