HSG19 - C. Mật khẩu
Một xâu kí tự được gọi là mật khẩu "an toàn" nếu có độ dài lớn hơn hoặc bằng 6 và xâu chứa ít nhất một chữ cái in hoa ('A'…'Z'), một chữ cái in thường ('a'…'z'), một chữ số ('0'…'9').</p>
Ví dụ: a1B2C3, tinHoc9 là mật khẩu "an toàn"; còn a1B2C, a1b2c3, A1B2C3, tinHoc đều không là mật khẩu "an toàn".
Bình có một xâu S, chỉ gồm các kí tự: chữ cái in hoa, chữ cái in thường và chữ số. Kí hiệu độ dài của xâu S là |S|. Bình muốn kiểm tra khả năng đoán nhận mật khẩu bằng cách đếm xem có bao nhiêu cặp chỉ số (i, j) thỏa mãn: 1 ≤ i < j ≤ |S| và xâu con gồm các kí tự liên tiếp từ i đến j của S là mật khẩu "an toàn".
Yêu cầu: Cho xâu S, tính số lượng cặp (i, j) thỏa mãn điều kiện trên.
Dữ liệu vào: Đọc từ tệp Cau4.inp chỉ gồm một dòng duy nhất chứa xâu S và có |S| ≤ 106.
Kết quả ra: Ghi ra tệp Cau4.out số lượng cặp (i, j) thỏa mãn tạo ra mật khẩu "an toàn".
Ví dụ:
Cau4.inp
abc3456789PQ
Cau4.out
6
Cau4.inp
abc123
Cau4.out
0
Chú ý:
50% test có |S| ≤ 3000.
50% test còn lại có |S| ≤ 104.
Comments