Mô tả
Tại bộ phận kỹ thuật của TMA Solutions, anh Hùng đang cấu hình terminal cho trợ lý AI lập trình mã nguồn mở để tối ưu quy trình gỡ lỗi. Mỗi dòng lệnh anh gõ được lưu thành một chuỗi nhị phân đại diện cho trạng thái bật/tắc của các tham số, ví dụ 01 nghĩa là tham số đầu tắt, tham số sau bật.
Để terminal nhận diện, chuỗi cấu hình phải thỏa đồng thời ba điều kiện:
- Chỉ chứa hai ký tự là
0và1. - Độ dài chuỗi là số chẵn (mỗi tham số cần một cặp trạng thái).
- Các ký tự luân phiên nghiêm ngặt giữa
0và1theo thứ tự bắt đầu từ0, nghĩa là ở vị trí chẵn (0-based) là0, vị trí lẻ là1.
Bạn hãy viết hàm kiểm tra một chuỗi cấu hình cho trước có được terminal chấp nhận hay không.
Đầu vào
Một chuỗi s gồm các ký tự ASCII in được.
Đầu ra
Trả về true nếu chuỗi cấu hình hợp lệ, ngược lại trả về false.
Ràng buộc
1 ≤ len(s) ≤ 10^6.- Mỗi ký tự trong
scó mã ASCII nằm trong đoạn[33, 126].
Ví dụ
Ví dụ 1
- Đầu vào:
s = "01" - Đầu ra:
true
Giải thích: Chuỗi chỉ chứa 0 và 1, độ dài bằng 2 (chẵn), các ký tự luân phiên đúng 0 rồi 1.
Ví dụ 2
- Đầu vào:
s = "010" - Đầu ra:
false
Giải thích: Độ dài bằng 3 là số lẻ, không thỏa điều kiện chẵn.
Ví dụ 3
- Đầu vào:
s = "0110" - Đầu ra:
false
Giải thích: Vị trí thứ ba phải là 0 nhưng thực tế là , nên không luân phiên đúng.