题意:一个正方形围墙内有一些交错的内墙,内墙的端点都在正方形上,在正方形内部有一个点,求从正方形外到这个点的最少要走的门数,门只能是线段的重点
方法:此题本想宽搜,但是太麻烦,看了Discuss后发现此题甚妙。因为从一个点到终点不可能“绕过”围墙,只能传过去,所以门是否开在中点是无所谓的,只要求四周线段中点到终点的线段与墙的最少交点个数即可。
更进一步,实际上,只需判断四周围墙的所有点与终点的连线与内墙的最少交点加一即可
代码:
题意:一个正方形围墙内有一些交错的内墙,内墙的端点都在正方形上,在正方形内部有一个点,求从正方形外到这个点的最少要走的门数,门只能是线段的重点
方法:此题本想宽搜,但是太麻烦,看了Discuss后发现此题甚妙。因为从一个点到终点不可能“绕过”围墙,只能传过去,所以门是否开在中点是无所谓的,只要求四周线段中点到终点的线段与墙的最少交点个数即可。
更进一步,实际上,只需判断四周围墙的所有点与终点的连线与内墙的最少交点加一即可
代码: