Bài 4. Xâu con tốt (THT B Khánh Hòa 2026)
Xem PDF
Điểm:
1800 (p)
Thời gian:
1.0s
Bộ nhớ:
512M
Input:
bàn phím
Output:
màn hình
Cho một xâu \(s\) có độ dài \(n\), chỉ gồm các chữ cái in hoa từ A đến Z.
Một đoạn con liên tiếp \([l, r]\) của xâu được gọi là tốt nếu tồn tại một kí tự xuất hiện nhiều hơn một nửa độ dài đoạn đó.
Nói cách khác, gọi \(cnt(c, l, r)\) là số lần xuất hiện của kí tự \(c\) trong đoạn \([l, r]\). Đoạn \([l, r]\) là tốt nếu tồn tại một kí tự \(c\) sao cho:
\[cnt(c, l, r) > \frac{r - l + 1}{2}\]
Yêu cầu
Hãy tìm độ dài lớn nhất của một đoạn tốt trong xâu \(s\).
Input
- Dòng đầu tiên chứa số nguyên dương \(n\) (\(1 \le n \le 10^5\)), là độ dài xâu.
- Dòng thứ hai chứa xâu \(s\) có độ dài \(n\), chỉ gồm các chữ cái in hoa từ
AđếnZ.
Output
- In ra một số nguyên duy nhất là độ dài lớn nhất của một đoạn tốt.
Example
Test 1
Input
7
AABBBCC
Output
5
Note
Chọn đoạn \([1, 5]\), tương ứng với xâu AABBB.
Trong đoạn này, kí tự B xuất hiện \(3\) lần, độ dài đoạn là \(5\). Vì \(3 > 5 / 2\), nên đây là một đoạn tốt.
Không có đoạn tốt nào có độ dài lớn hơn \(5\), nên đáp án là \(5\).
Scoring
- Subtask \(1\) (\(20\%\) số điểm): \(n \le 500\).
- Subtask \(2\) (\(30\%\) số điểm): \(n \le 5000\).
- Subtask \(3\) (\(30\%\) số điểm): Xâu \(s\) chỉ gồm hai kí tự
AvàB. - Subtask \(4\) (\(20\%\) số điểm): Không có ràng buộc gì thêm.
Kỳ thi:
- Đề THT B Khánh Hòa 2026 (31 Tháng năm, 2026)
Bình luận