塔子哥是一个农民,他有一片 n×m 大小的田地,共 n 行 m 列,其中行和列都用从 1 开始的整数编号,田地中有 k 个格子中埋有土豆。我们记第 a 行第 b 列的格子为 (a,b) 。塔子哥现在位于 (x1,y1) ,他想要移动到 (x2,y2) 处去收菜,但是他不想阻碍自己土地里土豆的生长情况,所以他不想在移动过程中碰到土豆。
塔子哥每次移动可以移动到与他所处格子的相邻的一格中,形式化地说,如果塔子哥位于 (x,y) ,则塔子哥可以移动到 (x−1,y) , (x+1,y) , (x,y−1) , (x,y+1) 的格子之一,但塔子哥不能移动到田地之外。
想要最大化 从 (sx,sy) 到 (tx,ty) 的所有路径中,和所有土豆最近的距离,假设我们设定距离为 d ,则和任意一个土豆的距离小于 d 的点都可以看成不可走的点。所以二分这个 d ,然后 check 是否满足要求。
如果 d 满足,那么 d−1 必然满足,但是 d+1 不一定满足,所以这部分就具有单调性,那么通过二分答案来解决该问题就具有了正确性。