Solution: Number of Spaces Cleaning Robot Cleaned
Explore how to simulate a cleaning robot moving in a 2D binary matrix by navigating edges and obstacles. Learn to track unique spaces cleaned by marking visits with bitwise operations, detecting loops to stop processing. Understand movement direction handling and efficient in-place state tracking without extra memory.
We'll cover the following...
Statement
You are given a 0-indexed 2D binary matrix, room, representing a room of size
A cleaning robot starts at the top-left corner of the room, facing right. It moves straight until it either reaches the edge of the room or encounters an object. When this happens, it turns 90 degrees clockwise and continues moving. The robot cleans the starting space and every space it visits.
The robot continues moving indefinitely. If it visits a space again while facing the same direction, return the number of unique spaces it has cleaned.
Constraints:
room.lengthroom[r].length...