#AT1159. 高尔夫

高尔夫

题目描述

小巨人高桥将在一个无限二维网格上打高尔夫球。

球最初在原点(0,0)(0,0),目标是一个网格点(具有整数坐标的点)(X,Y)(X,Y)。在一次击球中,小巨人高桥可以进行以下操作: 选择一个与球当前位置的曼哈顿距离为KK的网格点,并将球送到该点。

当球到达目标时,游戏结束,分数将是到目前为止击球的次数。

小巨人高桥希望以尽可能低的分数完成游戏。

确定游戏是否可以完成。如果答案为是,则找出一种以最低分数将球带到目的地的方法。

什么是曼哈顿距离?

两点(x1,y1)(x_1, y_1)(x2,y2)(x_2, y_2)之间的曼哈顿距离定义为x1x2+y1y2|x_1-x_2|+|y_1-y_2|

输入

第一行一个整数KK

第二行两个整数X,YX,Y

输出

如果游戏无法完成,则输出-1。

如果游戏可以完成,则输出一种以尽可能低的分数将球带到目的地的方法,格式如下:s x1 y1 x2 y2...xs ys这里,ss是分数最低的可能值,(xi;yi)(x_i;y_i)是第ii次击球后球的位置.

11
-1 2
3
7 4
2 10
-1 2

样例解释

(0,0)(0,0)(7,4)(7,4)之间的曼哈顿距离为07+04=11|0-7+|0 -4| = 11

(7,4)(7,4)(2,10)(2,10)之间的曼哈顿距离为72+410=11|7-2|+|4-10|= 11

(2,10)(2,10)(1,2)(-1,2)之间的曼哈顿距离为2(1)+102=11|2-(-1)|+|10-2|= 11

因此,这种打法是有效的。

此外,没有办法在少于三次击球时完成游戏。

4600
52 149
-1
4
9 9
5
1 3
4 2
4 6
6 8
9 9

提示

1K109 1 \leq K \leq 10^9

105X,Y105-10^5 \leqq X,Y \leq 10^5

(X,Y)(0,0)(X,Y) \neq (0,0)