Cho chuỗi chứa 'R' (vị trí hiện tại), 'B' (chặn), '.' (trống). Mỗi bước đi sang ô kề trống. Kiểm tra có thể đến đầu hoặc cuối chuỗi.
Ví dụ: → True (đi trái không bị chặn).
Giải thuật (Kiểm tra chặn đơn giản O(n))
- Tìm vị trí
. - Trả về
nếu không có 'B' trong(trái) HOẶC không có 'B' trong(phải).
Ví dụ minh họa
class Solution:
def solve(self, s):
r_pos = s.find('R')
return 'B' not in s[:r_pos] or 'B' not in s[r_pos:]
ob = Solution()
s = "...........R.....BBBB....."
print(ob.solve(s)) # Output: True
Đầu vào
"...........R.....BBBB....."
Đầu ra
True