Returning Pool Shot


Returning Pool Shot

Table of Contents

题目

在一张多边形台球桌上击出一个球。台球桌不一定是凸的,但每个角都是直角,并且每条边都平行于东西方向或南北方向。

球从某个角出发,而且这个出发角是一个凸角,即内角为\(90^\circ\)

台球桌的每个角上都有袋口,因此如果球恰好撞到某个角,就会立刻落袋;否则它会按理想反射定律反弹,且没有能量损失。

问:球有没有可能最终回到它出发的那个角?

分析

不可能

我们用反证法。假设确实存在这样的一次击球,能够让球最后回到出发角。

由于出发角是凸角,所以球出发时只能朝某个象限射出。不妨设它一开始沿东北方向前进。若它最后回到原角,那么回到该角时方向必为西南方向。

把两次碰壁之间的一段直线路径称为一“程”。每次反弹时,球只会有一个方向分量改变:

  • 若撞到东西向的边,则南北方向翻转;
  • 若撞到南北向的边,则东西方向翻转。

因此每次反弹只会把方向记号中的一个字母改掉。例如,NE只能变成SE或NW。

现在看从NE变到SW需要什么条件。东西方向要从E变成W,南北方向要从N变成S,所以这两个分量都必须各自翻转奇数次。于是总反弹次数必为偶数。设总共反弹了\(2m\)次,那么整条轨迹就被分成\(2m+1\)程,是奇数程。

接着看这条轨迹的对称性。所有NE方向的程彼此平行,所有SW方向的程也彼此平行;同理,所有NW方向的程彼此平行,所有SE方向的程也彼此平行。特别地,第一程和最后一程必在同一直线上,只是方向相反。

而反射定律是可逆的:若一条路径正着走是合法的,那么倒着走也同样合法。于是,这条“从起点出去再回到起点”的整条路径,正反看应当完全一样;换句话说,碰壁点的序列必须是一个回文。

设依次碰到的点为\(P_1,P_2,\dots,P_{2m}\)。由于整条路径前后对称,就有

\[ P_i=P_{2m+1-i}\qquad(1\le i\le 2m).\]

\(i=m\),便得到

\[ P_m=P_{m+1}.\]

这说明中间两次碰壁发生在同一点,也就是说中间有一程的长度为\(0\)。这显然不可能,因为每一程都应该是一段真正的直线运动。

矛盾由此产生,所以原先的假设不成立。

因此,球不可能回到它出发的那个角。

Next