QOJ.ac

QOJ

Time Limit: 5 s Memory Limit: 2048 MB Total points: 100

#8686. 動物園の管理

Statistics

動物園を管理していると、動物を別の飼育区画に移したくなることがあります。たとえば、シマウマは現在ペンギンがいる広い区画を気に入りそうで、ペンギンは現在コアラがいる寒い区画に移りたそうで、コアラはユーカリで満たせる空の区画に移るとします。その場合、まずコアラを移して寒い区画を空け、次にそこへペンギンを移し、最後にシマウマを移します。

動物の移動には、区画を結ぶ専用のトンネルを使います。動物が外を移動すると、怖がるおそれがあり、逃げ出してけがをするおそれもあるためです。

problem_8686_a2a053ee36bb78fadb0dd8509481feee.png

ラクダ、ロバ、およびヤギ(の一部)が写った動物園の写真。

残念ながら、最近さらに動物を受け入れたため、現在はすべての区画が埋まっており、移動がずっと難しくなりました。たとえば、コアラが元のシマウマの区画に移るとすると、どの動物の集団も最初には移せません。そこで動物を同時に移す方法を学びました。シマウマ、コアラ、ペンギンが同時に別々のトンネルへ入り、同時に新しい区画に到着すれば、互いに出会うことはありません。ただし、この方法でトンネルで結ばれた2つの区画の動物を単純に交換することはできません(トンネル内で出会って怖がってしまうためです)。

さて、ここにパズルがあります。区画の一覧があり、各区画には1種類の動物がいます。一部の区画はトンネルで結ばれています。何回でも、いくつかの動物を選び、それぞれをトンネルで隣接する区画に移せます。ただし、移動先の区画の動物も同じ操作の一部として移動し、同じ操作で各トンネルを2回以上使わないことが条件です。また、理想的な動物の配置も決まっています。一連の操作によってその配置にできるでしょうか?

入力

入力の最初の行は2つの整数 $n$($1 \le n \le 4 \cdot 10^5$)と $m$($0 \le m \le 4 \cdot 10^5$)からなり、それぞれ区画とトンネルの個数を表します。続く $n$ 行のうち、第 $i$ 行は2つの整数 $b_i$($1 \le b_i \le 10^6$)と $e_i$($1 \le e \le 10^6$)を含み、区画 $i$ に最初にいる動物の種類と、すべての操作の後に区画 $i$ にいてほしい動物の種類を表します。$e_1, \ldots, e_n$ は $b_1, \ldots, b_n$ の順列であると仮定してかまいません。

続く $m$ 行はトンネルを表します。各行は2つの整数 $x$ と $y$($1 \le x < y \le n$)を含み、区画 $x$ と $y$ が双方向のトンネルで結ばれていることを表します。どの2つの区画も、2本以上のトンネルで結ばれることはありません。

出力

すべての区画に希望する種類の動物がいるように移動できる場合は possible を出力してください。そうでない場合は impossible を出力してください。

入出力例

入力 1

3 3
1 4
4 7
7 1
1 2
2 3
1 3

出力 1

possible

入力 2

2 1
1 2
2 1
1 2

出力 2

impossible

入力 3

5 6
10 40
20 30
30 50
40 20
50 10
1 2
2 3
1 3
3 4
3 5
4 5

出力 3

possible

入力 4

4 4
10 10
10 20
20 10
20 20
1 2
2 3
3 4
1 4

出力 4

impossible

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.