QOJ.ac

QOJ

Time Limit: 0.8 s Memory Limit: 64 MB Total points: 100

#11297. 罪犯

Statistics

Byteburg 是河边一座美丽的城镇。沿河有 $n$ 座房屋,按河流下游方向依次编号为 $1$ 到 $n$。Byteburg 曾经是一个宁静祥和、人人幸福的小镇。然而,最近情况发生了变化,两名危险的罪犯——Bitie 和 Bytie 在此落脚。他们已经犯下了多起抢劫案,以至于市民们不敢离开家门。

Bitie 和 Bytie 并非简单的入室盗窃,而是进行大规模的洗劫:他们每次离开各自的住所,朝着对方的方向行走,中途从不回头。Bitie 向下游(编号增大的方向)行走,而 Bytie 向上游(编号减小的方向)行走。在相遇之前,他们各自会选择若干房屋进行抢劫,窃取珍贵的物品(以及重要数据)。抢劫完成后,他们在某座房屋会合并瓜分赃物。Byteburg 的居民对此已经忍无可忍,他们都希望恢复往日的宁静。于是,他们向侦探 Bythony 求助。

侦探确定了这两名歹徒居住在颜色相同的房屋中,但他不知道具体是哪一座。就在刚才,一条匿名线索称,劫匪们正在进行一次洗劫。由于担心自身安全,线索提供者没有说明哪些房屋会被抢劫,但指出了这些房屋的颜色。事实证明,歹徒们非常迷信——他们每个人对每种颜色的房屋最多只会抢劫一次。

Bythony 不能再等了。他打算在劫匪的会合地点伏击他们。请编写一个程序,帮助 Bythony 找出所有可能的会合地点,从而协助他的行动。

输入格式

第一行包含两个整数 $n$ 和 $k$ ($3 \le n \le 1\,000\,000$, $1 \le k \le 1\,000\,000$, $k \le n$),分别表示 Byteburg 的房屋数量和房屋颜色数量,中间用空格隔开。颜色用 $1$ 到 $k$ 的整数编号。第二行包含一个长度为 $n$ 的整数序列 $c_{1},c_{2},\dots,c_{n}$ ($1 \le c_{i} \le k$),表示 Byteburg 中各房屋的颜色。

第三行包含两个整数 $m$ 和 $l$ ($1 \le m,l \le n$, $m+l \le n-1$),分别表示 Bitie 和 Bytie 将要抢劫的房屋数量,中间用空格隔开。第四行包含 $m$ 个互不相同的整数 $x_{1},x_{2},\dots,x_{m}$ ($1 \le x_{i} \le k$),表示 Bitie 抢劫房屋的颜色序列(按抢劫顺序,不包含 Bitie 的住所)。第五行(最后一行)包含 $l$ 个互不相同的整数 $y_{1},y_{2},\dots,y_{l}$ ($1 \le y_{i} \le k$),表示 Bytie 抢劫房屋的颜色序列(按抢劫顺序,不包含 Bytie 的住所)。此外,$x_{m}=y_{l}$ 是劫匪们瓜分赃物的房屋颜色。(显然,他们也必须抢劫那座房屋!)

输出格式

你的程序需要向标准输出打印两行。第一行应给出在满足上述约束条件下,罪犯可能相遇的房屋数量。第二行应包含这些房屋编号的递增序列,中间用空格隔开。如果劫匪无法相遇,第一行应输出 $0$,第二行应为空。

样例

输入 1

15 7
2 5 6 2 4 7 3 3 2 3 7 5 3 6 2
3 2
4 7 3
5 3

输出 1

3
7 8 10

说明

在上述例子中,歹徒可能居住在颜色为 2 的房屋(Bitie 住在 1 号或 4 号,Bytie 住在 15 号)或颜色为 6 的房屋(Bitie 住在 3 号,Bytie 住在 14 号)。无论 Bitie 住在 1 号还是 4 号,他都可以抢劫以下房屋:5(颜色为 4)、6(颜色为 7),然后是 7、8 或 10 中的任意一个(颜色为 3)。Bytie 可以抢劫以下房屋:12(颜色为 5),之后在 7、8 或 10 中的任意一个(颜色为 3)与 Bitie 会合。上图描绘了 Bitie 住在 1 号房屋且劫匪在 8 号房屋会合的情景。

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.