Given k terminals and n axis-parallel rectangular obstacles on the plane, our algorithm finds a plane region R^* such that, for any point p in R^*, the total length of the k shortest rectilinear paths connecting p and the k terminals without passing through any obstacle is minimum. The algorithm is output-sensitive, and takes O((K+kn)log(kn)+k^2n) time and O(K+k^2n) space, where K is the total number of polygonal vertices of the found region R^*. If k is a bounded constant, then our algorithm takes O((K+n)log n) time and O(K+n) space.
View full abstract