Một circuit breaker bảo vệ service khỏi gọi liên tục khi đang lỗi. Quy tắc đơn giản hóa:
CLOSED, biến đếm fail = 0.CLOSED: gặp F -> fail++; nếu fail >= threshold thì chuyển sang OPEN (và fail reset về 0). Gặp S -> fail = 0.OPEN: bỏ qua mọi gọi; nhưng sự kiện đặc biệt R (reset/timeout) chuyển sang HALF.HALF: gặp S -> chuyển CLOSED (fail=0). Gặp F -> chuyển OPEN (fail=0).Cho threshold và chuỗi sự kiện (gồm S,F,R), in ra trạng thái cuối cùng.
Input:
3
FFF
Output:
OPEN
Dòng 1: threshold. Dòng 2: chuỗi sự kiện gồm các ký tự S/F/R.
1 <= threshold <= 100. Độ dài chuỗi <= 1000.
Một dòng: trạng thái cuối CLOSED, OPEN hoặc HALF.
Ví dụ:
Đầu vào:
3
FFF
Đầu ra:
OPEN
Giải thích:
Đang tải editor...