Ma trận đẹp

Đề bài

Mô tả

Ma trận kích thước n×m được gọi là đẹp nếu mọi hàng và mọi cột của nó đều là dãy đối xứng (palindrome). Một dãy (a1,a2,…,ak) là palindrome nếu ai=ak−i+1 với mọi 1≤i≤k.

Cho ma trận a kích thước n×m. Trong một phép thao tác, bạn có thể chọn một ô bất kỳ và tăng hoặc giảm giá trị của ô đó đi 1. Hãy tìm số phép thao tác ít nhất để biến ma trận trở thành ma trận đẹp.

Dữ liệu vào

Dòng đầu chứa một số nguyên t — số test (1≤t≤10).

Với mỗi test:

  • Dòng đầu chứa hai số nguyên n và m (1≤n,m≤100) — kích thước ma trận.
  • Tiếp theo là n dòng, mỗi dòng có m số nguyên ai,j (0≤ai,j≤109) — các phần tử của ma trận.

Dữ liệu ra

Với mỗi test, in ra một số nguyên là số phép thao tác tối thiểu cần thực hiện.

Ràng buộc

  • 1≤t≤10
  • 1≤n,m≤100
  • 0≤ai,j≤109

Ví dụ

Input Output Giải thích
2
4 2
4 2
2 4
4 2
2 4
3 4
1 2 3 4
5 6 7 8
9 10 11 18
8
42
Ở test thứ nhất, ta có thể biến đổi ma trận thành 2 2 / 4 4 / 4 4 / 2 2 với tổng 8 phép thao tác. Ở test thứ hai, một ma trận đẹp có thể đạt là 5 6 6 5 / 6 6 6 6 / 5 6 6 5 với tổng 42 phép thao tác.
9
1 1
132703760
1 1
33227322
1 1
943066084
1 1
729139464
1 1
450488051
1 1
206794512
1 1
372520051
1 1
552003271
1 1
319080560
0
0
0
0
0
0
0
0
0
Mọi ma trận 1×1 đã sẵn là ma trận đẹp, không cần thao tác nào.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.402 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0