Mô tả
Chị Mai quản lý nhóm người dùng cho chiến dịch khuyến mãi ZaloPay tại tiệm tạp hóa khu chợ Heim. Mỗi khách hàng đăng ký nhận voucher phải cung cấp số điện thoại di động Việt Nam. Hệ thống nhận chuỗi người dùng gõ vào — đôi khi gõ liền (vd: 0901234567), đôi khi phân tách nhóm ba số bằng dấu chấm (vd: 090.123.4567). Chị Mai cần một hàm tự động lọc: chuỗi chỉ được chứa đúng 10 chữ số và tối đa hai dấu chấm ở vị trí quy định, đồng thời đầu số phải thuộc danh sách đầu số mạng di động hợp lệ của nhà mạng Big4 (Viettel, MobiFone, VinaPhone, Vietnamobile) mà chị Mai được cấp.
Quy tắc định dạng hợp lệ:
- Chiều dài chuỗi đúng 10 ký tự (gõ liền) hoặc 12 ký tự (có hai dấu chấm).
- Nếu có dấu chấm: bắt buộc ở vị trí chỉ mục 3 và 7 (sau nhóm 3–3–4 chữ số).
- Mười chữ số phải tạo thành đầu số thuộc tập hợp sau:
032, 033, 034, 035, 036, 037, 038, 039(Viettel),070, 076, 077, 078, 079(MobiFone),081, 082, 083, 084, 085(VinaPhone),056, 058, 092(Vietnamobile). - Không được chứa ký tự nào khác ngoài chữ số và dấu chấm (nếu có).
Đầu vào
Một chuỗi s duy nhất mà khách hàng nhập vào.
Đầu ra
Trả về true nếu chuỗi khớp đúng định dạng ZaloPay, ngược lại trả về false.
Ràng buộc
1 ≤ len(s) ≤ 50schỉ chứa chữ số, dấu chấm hoặc các ký tự chữ cái, ký tự khác.- Mọi giá trị số trong bài nằm trong khoảng
|x| ≤ 10^9.
Ví dụ
Ví dụ 1
- Đầu vào:
090.123.4567 - Đầu ra:
false - Giải thích: Đầu số
090không nằm trong danh sách đầu số hợp lệ (thuộc mạng cũ, chị Mai không nhận), nên trả vềfalse.
Ví dụ 2
- Đầu vào:
039.876.5432 - Đầu ra:
true - Giải thích: Chiều dài 12 ký tự, dấu chấm ở vị trí 3 và 7, trích 10 chữ số được
0398765432, đầu số039thuộc tập Viettel — hợp lệ.
Ví dụ 3
- Đầu vào:
039.876.543 - Đầu ra:
false - Giải thích: Chuỗi chỉ có 11 ký tự (9 chữ số), không khớp mẫu 3-3-4.