Sắp xếp các viên bi

View as PDF

Submit solution


Points: 0.89 (partial)
Time limit: 1.0s
Memory limit: 256M
Input: stdin
Output: stdout

Problem type
Allowed languages
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Có ~N~ viên bi màu được sắp thành một hàng trên mặt đất, các viên bi thuộc ~1~ trong ~K~ màu được đánh số từ ~1~ đến ~K~.

Để tiện phân loại, beochayso muốn sắp xếp lại các viên bi này sao cho các viên bi cùng màu thì nằm cạnh nhau, như vậy beochayso sẽ thu được các đoạn liên tiếp gồm những viên bi cùng màu, mỗi màu chỉ thuộc đúng ~1~ đoạn.

Mỗi lần beochayso chỉ được đổi chỗ ~2~ viên bi cạnh nhau, hãy giúp beochayso sắp xếp lại các viên bi này sao cho số lần phải đổi chỗ các viên bi là ít nhất.

Input

Dòng thứ nhất ghi ~2~ số ~N~ và ~K~ là số viên bi và số màu. ~(2 \leq N \leq 20000~, ~1 \leq K \leq 10)~

Dòng thứ hai ghi ~N~ số nguyên dương là màu của ~N~ viên bi theo thứ tự.

Output

Ghi ra duy nhất một số nguyên là số phép đổi chỗ ít nhất.

Sample Input

5 3
3 2 1 3 2

Sample Output

3

Note

Đổi chỗ số thứ ~3~ và ~4~:

~3~ ~2~ ~3~ ~1~ ~2~

Đổi chỗ số thứ ~4~ và ~5~:

~3~ ~2~ ~3~ ~2~ ~1~

Đổi chỗ số thứ ~2~ và ~3~:

~3~ ~3~ ~2~ ~2~ ~1~


Comments

Please read the guidelines before commenting.


There are no comments at the moment.