QOJ.ac

QOJ

حد الوقت: 1 s حد الذاكرة: 512 MB مجموع النقاط: 100

#3434. 餐厅订单

الإحصائيات

你的一个朋友在餐厅当服务员,他遇到了一个难题。一群 xkcd 的粉丝开始光顾这家餐厅,并像下面漫画中那样点餐。处理每份订单都要花他很多时间,也许你能帮帮他。

图 G.1: 漫画 xkcd.com/287。

题目描述

你需要编写一个程序,根据订单的总金额和菜单上每项菜品的价格,找出顾客点了哪些菜。

输入格式

输入的第一行包含一个整数 $n$ ($1 \le n \le 100$),表示菜单上的菜品数量。下一行包含 $n$ 个以空格分隔的正整数 $c_1, c_2, \dots, c_n$,表示菜单上每项菜品的价格(单位为瑞典克朗)。没有任何菜品的价格超过 $1\,000$ 瑞典克朗。

接下来一行包含一个整数 $m$ ($1 \le m \le 1\,000$),表示订单的数量,随后的一行包含 $m$ 个订单。每个订单由一个整数 $s$ ($1 \le s \le 30\,000$) 表示,即所有已点菜品的总金额(单位为瑞典克朗)。

输出格式

对于输入中的每个订单,输出一行。如果存在唯一一种点餐方式能达到指定的总金额,则输出该订单中包含的菜品编号列表,以空格分隔,并按升序排列。如果订单中包含多份相同的菜品,则需按相应次数打印该菜品的编号。菜单上的第一项菜品编号为 1,第二项为 2,以此类推。

如果不存在能达到指定总金额的订单,输出 Impossible。如果存在多种不同的点餐方式能达到指定总金额,输出 Ambiguous

样例

样例输入 1

3
4 5 8
3
11 13 14

样例输出 1

Impossible
Ambiguous
1 2 2

样例输入 2

6
215 275 335 355 420 580
1
1505

样例输出 2

Ambiguous

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.