Điều hướng chính

Nhắn tin NQ Coding

Ngôn ngữ

Phím tắt

/
Chuyển đến ô tìm bài
g p
Đi đến bài tập
g c
Đi đến kỳ thi
g u
Đi đến người dùng
?
Mở trợ giúp phím tắt

Bài tập xaucondainhatklan

Xâu con dài nhất

Dễ Hashing (hàm băm)Mảng hậu tố (Suffix Array)Tìm kiếm nhị phân

  • 100p Điểm
  • 1.0s Thời gian
  • 256M Bộ nhớ
  • 25% Tỉ lệ AC
  • 1 Số AC

Một xâu \(A[1..m]\) được gọi là xuất hiện trong xâu \(B[1..n]\) đúng \(k\) lần khi và chỉ khi tồn tại đúng \(k\) vị trí \(i\) phân biệt sao cho \(A[1..m] = B[i..i+m-1]\). Các lần xuất hiện được phép chồng lên nhau.

Yêu cầu: Cho xâu \(S\) có độ dài \(n\) và một số nguyên dương \(k\). Tìm độ dài của xâu dài nhất xuất hiện ít nhất \(k\) lần trong xâu \(S\). Nếu không có xâu (khác rỗng) nào như vậy, in ra \(0\).

Input

  • Dòng \(1\): chứa hai số nguyên \(n\) và \(k\) cách nhau một dấu cách (\(1 \le n \le 50000\), \(1 \le k \le 200\)).
  • Dòng \(2\): chứa xâu \(S\) có độ dài \(n\) (gồm các chữ cái tiếng Anh in thường viết liên tiếp nhau).

Output

Một dòng ghi một số nguyên là độ dài lớn nhất của xâu con tìm được.

Scoring

  • Có \(50\%\) số điểm với \(n \le 200\).
  • Có \(50\%\) số điểm với \(200 < n \le 50000\).

Sample Input 1

5 2
bbbbb

Sample Output 1

4

Notes

Xâu bbbb xuất hiện \(2\) lần (tại vị trí \(1\) và \(2\), hai lần xuất hiện chồng lên nhau).

Bình luận

Chưa có bình luận nào.