QJ3840 - Lưới chữ cái đối xứng

Xem dưới dạng PDF

Gửi bài giải

Điểm: 100
Giới hạn thời gian: 2.0s
Go 4.0s
Java 3.0s
PyPy 2 4.0s
PyPy 3 4.0s
Python 3 4.0s
V8 JavaScript 4.0s
Giới hạn bộ nhớ: 256M

Tác giả:
Kiểu bài tập

Cho một lưới ô vuông kích thước $n \times m$, mỗi ô chứa một chữ cái thường. Lan muốn mọi hàng và mọi cột của lưới đều tạo thành dãy chữ cái đối xứng (palindrome). Việc thay đổi chữ cái tuân theo các quy tắc sau:

  1. Mỗi lần chỉ có thể đổi một chữ cái thành chữ cái liền trước hoặc liền sau nó;

  2. Chữ cái liền trước của az, chữ cái liền sau của za;

  3. Mỗi lần thay đổi tốn 1 điểm thể lực, thể lực không giới hạn.

Hãy tìm tổng thể lực nhỏ nhất để tất cả các hàng và các cột đều đối xứng.

Dữ liệu vào

Dòng đầu tiên chứa hai số nguyên $n,m$, là số hàng và số cột của lưới. Tiếp theo là $n$ dòng, mỗi dòng chứa một xâu gồm $m$ chữ cái thường, biểu diễn các chữ cái trên mỗi hàng của lưới.

Dữ liệu ra

In ra một dòng chứa một số nguyên, là tổng thể lực nhỏ nhất.

Ví dụ

Input

3 5
asdfg
sdfgh
dfghj

Output

44

Ghi chú

Giới hạn dữ liệu

Đối với tất cả dữ liệu chấm, $1 \le n,m \le 1000$


Nhận xét

Không có ý kiến tại thời điểm này.