题面 https://www.lydsy.com/JudgeOnline/problem.php?id=4456 题解 分治 设当前work的区间为(x1,y1,x2,y2) 我们将长边分成两半 不妨设长边是(x1,x2) 那么令mid=(x1+x2)/2 对于分界线(mid,y1)~(mid,y2)的所有点 我们做最短路 得到分界线上所有点到区间里任意点的最短路 那么对于询问(sx,sy,tx,ty) 我们可以枚举分界线上某一点(mid,y) 并且用dist((mid,y),(sx,sy))+…