COUNT GOOD SUBSTRINGS

Các định nghĩa:

  • Một xâu con \(s\lbrack l,r\rbrack(1 \leq l \leq r \leq n)\) của xâu \(s = s_{1}s_{2}\ldots s_{n}\) là xâu \(s_{l}s_{l + 1}s_{l + 2}\ldots s_{r}\)

  • Một xâu \(s = s_{1}s_{2}s_{3}\ldots s_{n}\) là một xâu \(palindrome\) nếu nó bằng xâu \(s_{n}s_{n - 1}s_{n - 2}\ldots s_{1}\)

  • Một xâu là “GOOD” nếu sau khi trộn các ký tự giống nhau liên tiếp thành một ký tự thì xâu kết quả là một xâu \(palindrome\). Ví dụ: Xâu “aabba” là “GOOD” bởi vì sau khi trộn, xâu trở thành “aba”, đó là một xâu \(palindrome\).

Yêu cầu: Cho một chuỗi, tìm hai giá trị \(m\)\(n\) trong đó

  • \(m = \ \)Số xâu con là “GOOD” có độ dài chẵn và

  • \(n = \ \)Số xâu con là “GOOD” có độ dài lẻ.

Dữ liệu:

- Một dòng duy nhất ghi chuỗi có độ dài \(n\ (1 \leq n \leq 10^{5})\). Mỗi ký tự trong chuỗi chỉ là “a” hoặc “b”

Kết quả:

- In ra trên một dòng gồm 2 số nguyên \(m,\ n\) cách nhau bởi một dấu cách.

Ví dụ 1:

input output Giải thích
bb 1 2 - 3 xâu con là “GOOD”: “b”, “b”, và “bb”;
- Một trong số chúng có độ dài chẵn và
- Hai trong số chúng có độ dài lẻ.

Ví dụ 2:

input output Giải thích
baab 2 4 - 6 xâu con là “GOOD”: “b”, “a”, “a”, “b”, “aa”, “baab”;
- Hai trong số chúng có độ dài chẵn và
- Bốn trong số chúng có độ dài lẻ.

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

hpcode.edu.vn
Code tích cực
Trong 24h
  1. ducdung192 (6/9)
  2. nguyenanhlong (4/8)
  3. duyminh123 (3/6)
Trong 7 ngày
  1. nguyenanhvu (45/94)
  2. kiennhientv (45/97)
  3. vu123567 (39/69)
Trong 30 ngày
  1. quechi (81/99)
  2. dangphong3108 (79/125)
  3. kiennhientv (79/179)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 38877

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