#P1598. Ray Tracing
Ray Tracing
题目描述
在一个 的矩形房间里有 个传感器,第 个传感器位于 ,所有的传感器位置互不相同。房间的一对对角位于 和 ,房间的墙壁与坐标轴平行。
在时刻 ,有一束光线从 出发,向的方向释放,这束光线以 的速度传播,因此,光线将在出发后恰好 时到达点 。当光线碰到墙壁时,它将遵循反射角等于入射角的规则进行反射,当它碰到 个角中的任意一个时,就会立刻停止。
对于每一个传感器,你需要计算光线第一次到达这个传感器所在点的时刻,如果光纤永远不会经过这个传感器,那么输出 。
输入格式
输入的第一行包括 个整数 (,)—— 房间墙壁的长度和传感器的数量。
接下来的 行,每一行包括两个整数 和 (,)—— 传感器的坐标,保证没有任何两个传感器有坐标相同。
输出格式
输出共 行,第 行应该输出光线第一次经过第 个传感器所在点的时刻;或是当光线永远不会穿过这个传感器所在的点时,输出 。
3 3 4
1 1
1 2
2 1
2 2
1
-1
-1
2
光线将依次通过点 。他将在 后在 停下。
3 4 6
1 1
2 1
1 2
2 2
1 3
2 3
1
-1
-1
2
5
-1
光纤将会依次穿过如下的点:$(0,0)\ (1,1)\ (2,2)\ (3,3)\ (2,4)\ (1,3)\ (0,2)\ (1,1)\ (2,0)\ (3,1)\ (2,2)\ (1,3)\ (0,4)$。光线将在 后在 停下,分别在点 处进行一次反射。
7 4 5
1 3
2 2
5 1
5 3
4 3
13
2
9
5
-1