AT_abc289_f [ABC289F] Teleporter Takahashi

题目描述

在 $xy$ 平面上有高桥君。一开始,高桥君位于点 $(s_x, s_y)$。高桥君想要移动到点 $(t_x, t_y)$。 在 $xy$ 平面上有一个矩形 $R\coloneqq\lbrace(x,y)\mid a-0.5\leq x\leq b+0.5,\,c-0.5\leq y\leq d+0.5\rbrace$。请考虑以下操作: - 选择一个包含在矩形 $R$ 内的格点 $(x, y)$。以点 $(x, y)$ 为中心,高桥君会瞬间移动到关于该点对称的位置。 请判断是否可以通过上述操作 $0$ 次或最多 $10^6$ 次,使高桥君到达点 $(t_x, t_y)$。如果可以,请构造出一种可行的操作序列。

输入格式

输入以如下格式从标准输入读入: > $s_x\ s_y\ t_x\ t_y\ a\ b\ c\ d$

输出格式

第 $1$ 行,如果可以通过 $0$ 次或最多 $10^6$ 次操作使高桥君到达点 $(t_x, t_y)$,输出 `Yes`,否则输出 `No`。 如果第 $1$ 行输出了 `Yes`,则仅在此情况下,接下来输出你构造的操作序列的长度 $d$(满足 $0\leq d\leq 10^6$),并在接下来的 $d$ 行中,第 $1+i$ 行($1\leq i\leq d$)输出第 $i$ 次操作选择的点 $(x, y)\in R$ 的坐标,坐标之间用空格隔开。

说明/提示

### 限制条件 - $0\leq s_x, s_y, t_x, t_y\leq 2\times10^5$ - $0\leq a\leq b\leq 2\times10^5$ - $0\leq c\leq d\leq 2\times10^5$ - 输入均为整数 ### 样例解释 1 例如,可以通过如下方式从 $(1,2)$ 移动到 $(7,8)$: - 选择点 $(7,0)$。高桥君移动到 $(13,-2)$。 - 选择点 $(9,3)$。高桥君移动到 $(5,8)$。 - 选择点 $(7,1)$。高桥君移动到 $(9,-6)$。 - 选择点 $(8,1)$。高桥君移动到 $(7,8)$。 只要满足条件,输出任意一组操作序列均可。例如,输出 ``` Yes 7 3 9 0 7 2 9 1 8 1 ``` 也是正确答案。 ### 样例解释 2 无论如何操作,都无法移动到点 $(8,4)$。 ### 样例解释 3 高桥君一开始就已经在目标位置。 由 ChatGPT 4.1 翻译