Gọi mỗi ô vuông nhỏ là 1 ô.
Robot có 2 thao tác:
- Đi sang ô bên cạnh: mất 1 phút.
- Lau ô đang đứng: mất 1 phút.
Nhìn hình thì mình thấy:
- Phòng là lưới \(6 \times 6\).
- Có:
- 1 khối đỏ dài chiếm 3 ô,
- 1 khối xanh dương chiếm 2 ô,
- 2 vật nhỏ chiếm 1 ô.
Tổng cộng có \(3 + 2 + 1 + 1 = 7\) ô bị chặn.
Vậy số ô robot có thể đi và cần lau là:
\(36-7=29ô\)
Muốn lau sạch thì:
- robot phải đứng lên mỗi ô ít nhất 1 lần để lau...
- mỗi lần lau mất 1 phút.
=> riêng thời gian lau đã là:
\(29\overset{}{phút}\)
Giờ tính số bước đi ít nhất.
Nếu không có vật cản, đi qua 29 ô thì tối thiểu cần:
\(29-1=28bước\)
Nhưng đề còn bắt: kết thúc phải quay về một góc.
Do robot xuất phát ở một góc và kết thúc ở một góc nên thực tế phải có thêm vài bước “vòng lại”.
Quan sát các vật cản thì không tạo thành vùng kín quá khó, nên có thể đi kiểu “rắn bò” gần như tối ưu.
Tuy nhiên sẽ bị dư ra đúng 1 bước để quay về góc.
Nên số bước đi ít nhất là:
\(29bước\)
Vậy tổng thời gian nhỏ nhất:
\(29+29=58\overset{}{}Phút\)