—A room is a simple polygon with a prespecified point, called the door, on its boundary. Search may be conducted by two guards on the boundary who keep mutual visibility at all times, or by a single boundary searcher with a flashlight. Search starts at the door, and must detect any intruder that was in the room at the time the search started, preventing the intruder from escaping through the door. A room may or may not be searchable, depending on where the door is placed or no matter where the door is placed. A problem of interest is to find all intervals on the boundary where the door can be placed for the resultant room to be searchable. It is known that this problem can be solved in O(n log n) time, if the given polygon has n sides. We improve this complexity to O(n).
Tsunehiko Kameda, John Z. Zhang