MẬT KHẨU

Nguồn: None

Do ảnh hưởng của đại dịch Covid-19, ban tổ chức hội thi Tin học trẻ dự kiến sẽ cho các thí sinh thi theo hình thức trực tuyến. Để tham gia thi, thí sinh sẽ được cung cấp một tài khoản và mật khẩu để đăng nhập. Để đảm bảo yếu tố bảo mật, ban tổ chức yêu cầu các thí sinh phải thay đổi mật khẩu ngay sau khi nhận được. Mật khẩu được coi là “an toàn” nếu thỏa mãn đồng thời các điều kiện sau:

  • Có độ dài tối thiểu là ~ 6 ~;
  • Chứa ít nhất ~ 1 ~ chữ cái in hoa (‘A’, ‘B’, …, ‘Z’);
  • Chứa ít nhất ~ 1 ~ chữ cái in thường (‘a’, ‘b’, …, ‘z’);
  • Chứa ít nhất ~ 1 ~ chữ số (‘0’, ‘1’, …, ‘9’).

Ví dụ các xâu kí tự: “a1B2C3”, “Tinhoc12” là các mật khẩu an toàn, còn các xâu kí tự: “a1B2C”, “a1b2c3”, “A1B2C3”, “TinHoc” không phải là mật khẩu an toàn.

Cho một xâu kí tự ~ S~ chỉ gồm các loại kí tự: chữ cái in hoa, chữ cái in thường và chữ số. Hãy cho biết có bao nhiêu cặp chỉ số ~ (i,j) ~ thỏa mãn đồng thời hai điều kiện:

  • ~ 1≤i<j≤S ~, trong đó ~S~ là độ dài xâu ~S ~, ~ 0≤S≤105; ~
  • Xâu con ~ Sij ~ gồm các kí tự liên tiếp từ chỉ số ~ i ~đến ~ j ~ của xâu~ S ~ là mật khẩu an toàn.

Yêu cầu: Cho xâu kí tự ~ S ~, tính số lượng cặp ~ (i,j) ~ thỏa mãn hai điều kiện trên.

Dữ liệu vào:

  • Gồm một dòng chứa xâu kí tự ~ S ~.

Kết quả:

  • Ghi một số nguyên dương là số lượng cặp chỉ số ~ (i,j) ~thỏa mãn điều kiện xâu con ~ S_{ij} ~ là mật khẩu an toàn.

Ví dụ:

Input 1

abc123 

Output 1

0 

Input 2

abc3456789PQ 

Output 2

6 

Ràng buộc:

  • Có 40% số test ứng với 40% số điểm của bài thỏa mãn: ~ 0 ≤S≤10^3; ~
  • 60% số test còn lại ứng với 60% số điểm của bài không có thêm ràng buộc nào.

Bạn cần đăng nhập để nộp bài

hpcode.edu.vn
Code tích cực
Trong 24h
  1. topteo1243 (18/22)
  2. cao_thanh_dat (6/11)
  3. nsduc83 (5/23)
Trong 7 ngày
  1. caubeioi (39/63)
  2. nhatanh (33/47)
  3. dat092010 (24/35)
Trong 30 ngày
  1. caubeioi (179/327)
  2. phamnhi (153/428)
  3. bestsoilvam (151/248)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 38226

Lưu Hải Phong - 2020
[email protected]