#L6882. 「THUPC 2023」物理实验

「THUPC 2023」物理实验

题目描述

为了验证新提出的猜想,物理学家小 I 需要完成 nn 种物理实验,其中第 ii (1in)(1 \le i \le n) 种实验的重要度是 2i2^{-i}
每种实验仅需要完成一次。小 I 一次只能做一种实验,且在开始了一个实验之后,不能做到一半去做另一个实验,也就是说在没有任何其他限制的情况下,小 I 完成实验的顺序可以用一个 11nn 的排列表示。

然而事情并非一帆风顺。有 mm 轮宇宙射线,分别会在小 I 完成了 a1a_1 种、a2a_2 种、,am\cdots,a_m 种(注意,不是第 aia_i 种)实验后轰击实验基地,保证

1a1<a2<<am<nm1 \le a_1 < a_2 < \cdots < a_m < n-m。

因此小 I 需要仔细地安排实验的顺序。

jj (1jm)(1 \le j \le m) 轮宇宙射线会恰好干扰一种实验的实验仪器,其干扰的实验种类按照以下方式确定:

  • 给出一个 11nn 的排列 pj,1,,pj,np_{j,1},\cdots,p_{j,n},其中 ii 越靠前表示第 ii 种实验对这轮宇宙射线越脆弱。每轮给出的排列不一定相同。
  • 那么在这轮宇宙射线轰击实验基地时,目前所有未完成且未被干扰的实验中最脆弱的一种会被干扰,之后无法进行对应实验。

在以上条件下,小 I 总共可以完成 (nm)(n-m) 种实验。小 I 希望它们的重要度总和尽可能大,可是小 I 是物理学家不懂算法,所以小 I 请教于你。你需要给出合理的实验顺序,使得完成的 (nm)(n-m) 种实验均未被宇宙射线干扰且重要度总和尽可能大。


输入格式

第一行:两个正整数 n,mn, m,表示实验种数和宇宙射线轮数。

第二行:mm 个整数 a1,a2,,ama_1, a_2, \cdots, a_m,表示每轮宇宙射线在完成了多少种实验后轰击实验基地。

接下来 mm 行:每行 nn 个整数 p1,p2,,pnp_1, p_2, \cdots, p_n,依次描述每轮宇宙射线的脆弱程度排序。保证 1pin1 \le p_i \le n 且每行的输入均构成 11nn 的排列。


输出格式

输出一行 nmn-m 个整数,表示你给出的实验顺序。你需要保证做每种实验时这种实验没有被宇宙射线干扰,且重要度总和最大。如果有多种方案,输出任意一种即可。


样例 1

输入:

3 1
1
1 2 3

输出:

1 3

解释:小 I 第一次完成第一种实验后,宇宙射线将会轰击第二种实验的仪器,因此第二次只能完成第三种实验。容易证明该方案达到最大重要度。


样例 2

输入:

3 1
1
2 3 1

输出:

2 1

解释:如果小 I 第一次完成第一种实验,那么宇宙射线将会轰击第二种实验的仪器,导致第二次只能完成第三种实验。此时重要度为 0.6250.625,而样例输出给出的方案重要度为 0.750.75


样例 3

输入:

6 2
1 3
3 2 4 5 6 1
5 4 1 3 6 2

输出:

1 4 5 2

解释:该组样例有多个合法的输出,如 5 4 1 2 也是一个合法的答案。


数据范围与提示

对于所有测试数据:

  • 3n6003 \le n \le 600
  • 1mn121 \le m \le \lfloor \frac{n-1}{2} \rfloor
  • 1a1<a2<<am<nm1 \le a_1 < a_2 < \cdots < a_m < n-m