QOJ.ac

QOJ

時間限制: 1 s 記憶體限制: 512 MB 總分: 100

#3467. 攀登

统计

Fiona 是一位专业的攀岩者。她经常随身携带一些岩钉,并将它们钉在岩壁上的某些战略位置,以便经验不足的攀岩者可以利用它们进行支撑。Fiona 可以攀爬到岩壁上的任何地方,但打入岩钉需要保持平衡,因此她只能在自己站立于当前已有的岩钉(或者当然,地面)上时才能放置一个岩钉。她可以随时移除一个岩钉并在以后重复使用。对于她计划访问的每一面岩壁,她都有一个周密的计划,规定了如何放置和移除岩钉,以确保在每一步中每个战略点都有一个岩钉。

Picture by Graham Evans

昨天下了雨,所以岩石会变湿,移除岩钉可能不安全。因此,Fiona 只有在能够站在与放置岩钉 $p$ 时相同的岩钉上时,才会移除该岩钉 $p$。遗憾的是,Fiona 现有的计划并没有考虑到这一新的预防措施,所以 Fiona 需要更新她的计划,并向你寻求帮助。她不想携带太多的额外岩钉,所以你承诺找到一种安全的计划,其使用的岩钉数量最多不超过她之前计划所用数量的 10 倍。你能兑现你的承诺吗?

例如,考虑第一个样例输入中包含 5 个战略点的岩壁。点 1 靠近地面,因此它不依赖于任何点。为了在点 2 放置岩钉,点 1 必须有岩钉,点 3 也是如此。为了在点 4 放置岩钉,点 2 和点 3 都必须有岩钉。为了在点 5 放置岩钉,只要点 4 有岩钉就足够了。

因此,序列(带有 $+$ 和 $-$ 注释,取决于我们是添加还是移除岩钉)$+1, +2, +3, -1, +4, -2, -3, +5$ 是一个安全的干燥计划,它使用了 3 个岩钉。然而,它不是一个安全的潮湿计划,因为我们在没有支撑的情况下移除了点 2 和点 3 的岩钉。序列 $+1, +2, -2, +3, -1, +4, -3, +5$ 仅需要 2 个岩钉,但它根本不安全,因为我们在点 2 没有岩钉的情况下向点 4 添加了岩钉。序列 $+1, +2, +3, -1, +4, +5$ 是一个安全的潮湿计划,它使用了 4 个岩钉。

输入格式

第一行包含一个整数 $n$ ($1 \le n \le 1000$),即岩壁上战略点的数量。 接下来的 $n$ 行,每行包含一个整数 $p$ ($0 \le p < n$) 和一个包含 $p$ 个整数的列表。如果第 $i$ 行包含 $x_1, \dots, x_p$ ($1 \le x_j < i$),则意味着为了在点 $i$ 放置岩钉,所有点 $x_j$ 都必须有岩钉。 下一行包含一个整数 $t$ ($1 \le t \le 1000$),即安全干燥计划中的步数。接下来的 $t$ 行,每行包含一个整数 $i$,表示正在向点 $i$ 放置岩钉或从点 $i$ 移除岩钉。

输出格式

如果没有使用不超过安全干燥计划岩钉数量 10 倍的岩钉的安全潮湿计划,输出 $-1$。否则,第一行必须包含一个整数 $t$ ($1 \le t \le 1\,000\,000$),即安全潮湿计划中的步数。接下来的 $t$ 行,每行必须包含一个整数 $i$,表示正在向点 $i$ 放置岩钉或从点 $i$ 移除岩钉。

样例

输入格式 1

5
0
1 1
1 1
2 2 3
1 4
8
1
2
3
1
4
2
3
5

输出格式 1

6
1
2
3
1
4
5

输入格式 2

3
0
1 1
1 2
4
1
2
1
3

输出格式 2

4
1
2
1
3

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.