#P16620. [GCPC2026]mirror magic

[GCPC2026]mirror magic

题目描述

Mia 和 Mark 各自拥有一盏吊灯,每盏吊灯都有 nn 个烛台。

安装完成后,Mia 想竖直放置一面镜子,将房间的一部分藏在镜子后面,用来表演魔术。当然,镜子的放置方式必须让 Mark 无法察觉它的存在。

Mia 相信自己可以避免让 Mark 在镜子中看到自己或 Mia,也可以通过巧妙的灯光掩盖房间墙壁被镜像后可能产生的异常。她最担心的是两盏吊灯:Mark 知道所有烛台的精确位置,如果镜中看到的吊灯与他认为应当位于镜子后方的吊灯不同,他会立刻发现问题。

因此,需要找到一条表示镜面的直线,使得:

  • 将 Mia 吊灯的全部烛台关于该直线镜像后,恰好得到 Mark 吊灯的全部烛台;
  • Mia 吊灯的所有烛台严格位于镜子的一侧;
  • Mark 吊灯的所有烛台严格位于镜子的另一侧。

请判断是否能够按要求放置镜子。

图 M.1:第三组样例的示意图。

输入格式

第一行包含一个整数 nn1n1051\le n\le 10^5),表示每盏吊灯的烛台数量。

接下来 nn 行,每行包含两个整数 xi,yix_i,y_i106xi,yi106-10^6\le x_i,y_i\le 10^6),表示 Mia 的第 ii 个烛台坐标。

再接下来 nn 行,每行包含两个整数 xi,yix_i,y_i106xi,yi106-10^6\le x_i,y_i\le 10^6),表示 Mark 的第 ii 个烛台坐标。

保证全部 2n2n 个点两两不同。

输出格式

如果能够按要求放置镜子,输出:

possible

否则输出:

impossible

样例 1

输入

1
0 0
1 1

输出

possible

样例 2

输入

2
0 0
2 2
1 1
3 3

输出

impossible

样例 3

输入

2
1 3
2 1
2 4
4 3

输出

possible

样例 4

输入

2
2 1
1 3
2 4
4 3

输出

possible

样例 5

输入

3
1 1
3 1
2 4
1 3
3 3
2 0

输出

impossible

样例 6

输入

3
-1 -1
-2 -2
-2 1
0 0
1 -1
1 2

输出

impossible

样例 7

输入

3
-1 -1
-2 -2
-2 1
0 1
1 -1
1 2

输出

impossible