Đ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 dpbitmaskbanphimcustom

Bàn phím custom

Dễ Quy hoạch độngQuy hoạch động trạng thái

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

Rinnosuke muốn đánh một đoạn văn bản \(S\) chỉ gồm \(m\) kí tự đầu trong bảng chữ cái tiếng Anh. Reimu muốn build cho anh một con phím custom với \(m\) phím nằm trên một hàng.

Vị trí của kí tự \(c\) trên bàn phím là \(p_c\), độ mệt mỏi khi đánh một đoạn văn bản \(s\) độ dài \(n\) là:

\[\sum_{i=1}^{n-1} |p_{s_{i+1}} - p_{s_i}|\]

Không muốn Rinnosuke bị mệt, hãy xác định độ mệt mỏi nhỏ nhất để đánh đoạn văn bản \(S\) giúp Reimu nhé!

Input

  • Dòng đầu tiên gồm \(2\) số nguyên \(n\) và \(m\) (\(1 \le n \le 10^5\), \(1 \le m \le 20\)).

  • Dòng thứ hai gồm xâu \(S\) có độ dài \(n\) và chỉ gồm \(m\) kí tự đầu của bảng chữ cái tiếng Anh in thường (từ a đến kí tự thứ \(m\)).

Output

In ra độ mệt mỏi nhỏ nhất.

Example

Input:

6 3
aacabc

Output:

5

Note

Reimu có thể xếp bàn phím thành bac (nghĩa là kí tự b ở vị trí \(0\), a ở vị trí \(1\), c ở vị trí \(2\)), khi đó độ mệt mỏi khi đánh xâu aacabc bằng \(5\).

Bình luận

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