Điều hướng chính

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

Good Name

Dễ

  • 100 Điểm
  • 0% Tỉ lệ AC
  • 0 Số AC
  • 256M Bộ nhớ giới hạn
  • 1.0s Giới hạn thời gian

Trong kỳ thi lập trình thuộc Trại hè miền Trung --- Tây Nguyên 2023, diễn ra tại trường THPT chuyên Lê Quý Đôn (Bình Định), Ban tổ chức đã chuẩn bị một phần thưởng vô cùng dễ thương: một chú gấu bông xinh xắn sẽ thuộc về nhà vô địch!

Tuy nhiên, vẫn còn một việc nhỏ cần giải quyết: làm sao để đặt tên cho chú gấu này?

Một cái tên ý nghĩa nên được lấy cảm hứng từ chủ đề của kỳ thi --- là một xâu ký tự chỉ gồm chữ cái thường trong bảng chữ cái tiếng Anh, độ dài \(n\). Ban tổ chức mong muốn chọn một xâu con (substring) liên tiếp trong xâu chủ đề để làm tên cho chú gấu. Tuy nhiên, để cái tên thật đa dạng, xâu con đó cần phải chứa ít nhất \(k\) ký tự phân biệt.

Nhiệm vụ của bạn là: hãy đếm xem có bao nhiêu cách chọn xâu con khác nhau (về chỉ số bắt đầu hoặc kết thúc) từ xâu chủ đề mà thỏa mãn điều kiện có ít nhất \(k\) ký tự khác nhau.

Input

  • Dòng đầu chứa hai số nguyên dương \(n\) và \(k\) \((n \leq 10^6, k \leq 26)\).
  • Dòng thứ hai là xâu \(s\).

Output

  • In ra một số nguyên không âm --- là số lượng xâu con thỏa mãn yêu cầu đề bài.

Example

Test 1

Input
7 2
abcabac
Output
21

Scoring

  • Subtask 1 (16% điểm): \(k = 1\)
  • Subtask 2 (22% điểm): \(k = 2\)
  • Subtask 3 (18% điểm): \(n \le 10^2\)
  • Subtask 4 (24% điểm): \(n \le 10^4\)
  • Subtask 5 (20% điểm): Không giới hạn gì thêm.

Bình luận

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