QOJ.ac

QOJ

时间限制: 1 s 内存限制: 2048 MB 总分: 100

#11359. 几何冲刺

统计

你正在游玩今年夏天最热门的节奏动作平台游戏——《几何冲刺》(Geometry Rush)!游戏在一个二维平面上进行。你的角色从 $(0, 0)$ 开始,每一秒必须以 45 度角向右上或右下移动,这会使你的角色分别从位置 $(x, y)$ 移动到 $(x+1, y+1)$ 或 $(x+1, y-1)$。你可以在每一秒改变移动方向,但不能在移动过程中改变。游戏中有从地板和天花板突出的障碍物,你必须躲避它们。如果你在 $w$ 秒后到达直线 $x = w$ 且途中没有触碰任何障碍物,你就赢得了游戏。

游戏区域在垂直方向上从 $y = -h$ 延伸到 $y = h$。障碍物由两条多边形曲线组成:一条曲线从 $(0, h)$ 开始,到 $(w, h)$ 结束,代表高度变化的天花板。该曲线顶点的 $x$ 坐标是非递减的,且 $y$ 坐标在 $-h$ 到 $h$ 之间(包含边界)。第二条多边形曲线从 $(0, -h)$ 开始,到 $(w, -h)$ 结束,代表地板。其顶点满足类似的约束。

你的角色是一个忽略大小的点:只要起点和终点之间的线段不与任何障碍物相交,你就可以从位置 $(x, y)$ 移动到 $(x+1, y \pm 1)$。(精确触碰任何多边形曲线都算作与障碍物相交,并导致游戏失败。)

你已经玩过很多次《几何冲刺》了。为了保持游戏的趣味性,你开始给自己设定挑战。例如:无论你在哪里穿过 $x = w$ 的终点线,你都能赢得游戏。但是,为了能赢得游戏,在 $x = w$ 处穿过时的 $y$ 坐标最大值是多少?最小值是多少?请计算这两个数值。

输入格式

输入的第一行包含四个空格分隔的整数 $n, m, w$ 和 $h$。前两个整数 ($3 \le n, m \le 10^5$) 分别是天花板和地板多边形曲线的顶点数。后两个整数 ($3 \le w, h \le 10^5$) 是如上所述的游戏区域的宽度和高度。

接下来的 $n$ 行,每行包含两个空格分隔的整数 $x$ 和 $y$ ($0 \le x \le w; -h \le y \le h$):按从左到右的顺序给出天花板多边形曲线的顶点坐标。保证第一个顶点为 $(0, h)$,最后一个顶点为 $(w, h)$。

接下来的 $m$ 行,每行包含两个空格分隔的整数 $x$ 和 $y$ ($0 \le x \le w; -h \le y \le h$):按从左到右的顺序给出地板多边形曲线的顶点坐标。保证第一个顶点为 $(0, -h)$,最后一个顶点为 $(w, -h)$。

对于两条多边形曲线:$x$ 坐标是非递减的,所有顶点各不相同,且曲线不会自交。两条曲线均不经过 $(0, 0)$。(地板和天花板曲线可能会相互交叉,这种情况下游戏无法获胜。)

输出格式

如果无法赢得游戏,输出 impossible。否则,输出两个空格分隔的整数:玩家在不触碰障碍物的情况下到达 $x = w$ 时,能够达到的最小和最大 $y$ 值。

样例

样例输入 1

4 4 5 5
0 5
0 2
5 2
5 5
0 -5
0 -2
5 -2
5 -5

样例输出 1

-1 1

样例输入 2

4 4 6 5
0 5
0 2
6 2
6 5
0 -5
0 -2
6 -2
6 -5

样例输出 2

0 0

样例输入 3

3 3 7 5
0 5
5 -1
7 5
0 -5
2 1
7 -5

样例输出 3

impossible

样例输入 4

4 3 5 5
0 5
0 2
5 2
5 5
0 -5
3 -1
5 -5

样例输出 4

-1 1

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.