[Beginner Free Contest 45] MAXGRID

Xem dạng PDF

Gửi bài giải

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

Dạng bài
Ngôn ngữ cho phép
C++, Pascal, PyPy, Python

Anh có một bàn cờ ma thuật hình chữ nhật ~N~ hàng, ~M~ cột, giao giữa hàng thứ ~i~ và cột thứ ~j~ là ô ~(i, j)~. Thay vì những quân cờ, với mỗi ô ~(i, j)~, bàn cờ sẽ tạo ra một giá trị ~A_{i,j}~ tương ứng.

Anh muốn bán bàn cờ này đi, với giá tiền chính là tổng các giá trị các ô trên bàn cờ. Tuy nhiên, suy đi nghĩ lại, Anh thấy nếu không thay đổi gì, bàn cờ có thể sẽ không được giá trị cao. May thay, Anh là một pháp sư, và anh có thể thay đổi giá trị của các ô của bàn cờ, nhưng vì chỉ học pháp thuật nửa vời, cậu không thể thay đổi các con số theo ý mình.

Cụ thể, phép thuật mà Anh học được không đủ để thay đổi giá trị của một ô cụ thể, mà chỉ có thể đổi dấu đồng thời giá trị của 2 ô kề nhau (có một cạnh chung). Tuy hạn chế về kĩ thuật, nhưng Anh lại rất dư "mana", cậu có thể thực hiện phép thuật này bao nhiêu lần cũng được, thậm chí nếu không cần thiết, cậu có thể không thực hiện.

Anh muốn biết giá trị lớn nhất mà cậu có thể bán bàn cờ này đi là bao nhiêu?

Dữ liệu

  • Dòng đầu chứa 2 số nguyên ~N, M~ tương ứng là số hàng và số cột của bàn cờ ~(1 \le N \times M \le 10^6)~.

  • ~N~ dòng sau, mỗi dòng gồm ~M~ số nguyên, số thứ ~j~ của dòng thứ ~i~ là ~A_{i,j}~ ~(-10^4 \le A_{i,j} \le 10^4)~.

Kết quả

Gồm một dòng duy nhất là tổng giá trị lớn nhất của bàn cờ có thể đạt được sau khi Anh thực hiện các thay đổi.

Ví dụ

Sample Input 1

2 2
1 -1
1 1

Sample Output 1

2

Sample Input 2

3 3
-3 -2 3
2 -2 1
1 2 3

Sample Output 2

17

Giải thích

  • Ở ví dụ 1, dù thực hiện bao nhiêu lần thay đổi thì vẫn tồn tại một ô có giá trị là ~-1~.

  • Ở ví dụ 2, ta có thể thực hiện thay đổi giá trị ô ~(1, 1)~ với ô ~(1, 2)~ và giá trị ô ~(2, 2)~ và ô ~(2, 3)~. Tổng lúc này là ~17~. Kết quả này là lớn nhất có thể.


Bình luận

Hãy đọc nội quy trước khi bình luận.


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