HSG12 Hà Nội 2026 - Chuỗi đa dạng
Xem dạng PDFTrong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài
Cho một chuỗi ký tự ~S~ chỉ chứa những ký tự in thường trong bảng chữ cái tiếng Anh và hai số nguyên dương ~K, X~. Một chuỗi ký tự được gọi là "chuỗi đa dạng" nếu tồn tại ít nhất ~K~ ký tự khác nhau mà ~K~ ký tự đó xuất hiện tối thiểu ~X~ lần.
Ví dụ: với ~K = 3, X = 2~ thì chuỗi "aabcabdc" là chuỗi đa dạng vì có ~3~ ký tự 'a', 'b', 'c' đều xuất hiện ít nhất ~2~ lần. Chuỗi "dzzdda" không phải là chuỗi đa dạng vì có ~3~ ký tự khác nhau nhưng chỉ có ~2~ ký tự 'd', 'z' xuất hiện ít nhất ~2~ lần.
Có thể thực hiện thao tác đổi một ký tự trong ~S~ thành một ký tự bất kỳ khác.
Yêu cầu: Hãy xác định độ dài chuỗi con liên tiếp ngắn nhất của ~S~ là một chuỗi đa dạng với tối đa một thao tác đổi.
Input
Dòng đầu tiên gồm hai số nguyên dương ~K, X~ ~(1 \le K \le 26; 1 \le X \le 10^5)~;
Một dòng duy nhất chứa một chuỗi ký tự ~S~ có độ dài không vượt quá ~10^5~.
Output
- Một số nguyên duy nhất là kết quả của bài toán. Nếu không có chuỗi con thỏa mãn thì in ra ~-1~.
Scoring
| Subtask | Điểm | Ràng buộc |
|---|---|---|
| 1 | ~60\%~ | ~\lvert S \rvert \le 100~ |
| 2 | ~20\%~ | ~\lvert S \rvert \le 1000~ |
| 3 | ~20\%~ | Không có giới hạn gì thêm |
Sample Input 1
2 3
abcacbabac
Sample Output 1
6
Sample Input 2
2 2
abcde
Sample Output 2
-1
Notes
Trong ví dụ thứ nhất, chọn chuỗi con "acbaba" và thực hiện thao tác đổi ký tự c thành ký tự b được chuỗi con "abbaba" có ~2~ ký tự 'a' và 'b', mỗi ký tự xuất hiện ~3~ lần.
Trong ví dụ thứ hai, không thể chọn được một chuỗi con với tối đa một thao tác đổi để tồn tại ít nhất ~2~ ký tự khác nhau, mỗi ký tự xuất hiện tối thiểu ~2~ lần.
Bình luận