Bàn phím cức tồm

Xem dạng PDF

Gửi bài giải

Điểm: 0,70 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Nguồn bài:
stolen
Dạng bài
Ngôn ngữ cho phép
C++, Pascal, Python

Sủi là người có máu M nên layout 40% là chưa đủ khổ dâm. Sủi làm một chiếc bàn phím mới có dạng ~m~ chữ cái đầu của bảng chữ cái tiếng Anh nằm cạnh nhau. Cậu cần đánh một đoạn văn bản ~s~ có độ dài ~n~ chỉ gồm các chữ cái trong bàn phím. Sủi sẽ gõ từng chữ lần lượt theo thứ tự từ trái sang phải và chi phí để di chuyển từ một chữ sang chữ khác là khoảng cách giữa 2 chữ đó. Chi phí của văn bản là tổng các chi phí di chuyển giữa các chữ hay: ~\sum_{i=1}^{n - 1} | p_{s_{i + 1}} - p_{s_i} | ~ với ~p_x~ là vị trí kí tự ~x~ từ trái sang phải của bàn phím.

Input

  • Dòng đầu gồm 2 số ~n~ và ~m~.
  • Dòng tiếp theo là xâu gồm ~n~ kí tự chứa ~m~ kí tự đầu tiên trong bảng chữ cái tiếng Anh.

Output

  • In ra một số nguyên duy nhất là chi phí nhỏ nhất có thể.

Sample Test

Input:

6 3
aacabc

Output:

5
Giải thích:
  • Sắp xếp thành bac

Ràng buộc

  • Subtask 1: ~1 \le n \le 100, 1 \le m \le 10~ (40% số điểm).
  • Subtask 2: ~1 \le n \le 100000, 1 \le m \le 10~ (30% số điểm).
  • Subtask 3: ~1 \le n \le 100000, 1 \le m \le 20~ (30% số điểm).