Trên một nền phẳng đã được chia thành các lưới ô vuông đơn vị gồm \(m \times n\) ô \((2 \leq m,n \leq \ 1000)\), người ta đặt chồng khít lên nhau các khối lập phương đơn vị (mỗi cạnh hình lập phương có độ dài bằng 1) thành những cột. Khối dưới cùng của cột chiếm trọn một ô của lưới. Chiều cao của mỗi cột được tính bằng số khối lập phương đơn vị tạo thành cột đó. Sau khi xếp xong toàn bộ các cột, người ta tiến hành sơn các mặt nhìn thấy được của các cột.
Yêu cầu: Biết chiều cao của mỗi cột, bạn hãy tính diện tích cần sơn.
Dữ liệu:
Dòng đầu tiên chứa hai số nguyên dương là kích thước của lưới ô vuông đơn vị (\(m\) hàng, \(n\) cột);
\(m\) dòng tiếp theo, dòng thứ \(i\) chứa \(n\) số nguyên dương có giá trị không quá \(10^{9}\) hiển thị chiều cao của cột dựng tại ô ở hàng \(i\), cột \(j\) của lưới.
Các số trên một dòng cách nhau ít nhất một dấu cách.
Kết quả: Một số nguyên dương là tổng diện tích cần sơn.
Ví dụ:
Input | Output |
---|---|
2 3 4 3 4 1 2 1 | 42 |
Giải thích:
![]() |
ABCD: mặt trước A’B’C’D’: mặt sau ADD’A’: mặt trái BCC’B’: mặt phải ABB’A’: mặt trên |
---|
Diện tích 1 mặt khối lập phương là 1.
Cột ô (1,1): Cần sơn 4 mặt trái + 4 mặt trước + 3 mặt sau + 1 mặt phải + 1: diện tích 12.
Cột ô (1,2): Cần sơn 3 mặt trước + 1 mặt sau: diện tích 4.
Cột ô (1,3): Cần sơn 4 mặt trước + 4 mặt bên phải + 3 mặt sau + 1 mặt trái: diện tích 12.
Cột (2,1): Cần sơn 1 mặt trái + 1 mặt sau: diện tích 2.
Cột (2,2): Cần sơn 1 mặt trái + 2 mặt sau + 1 mặt phải: diện tích 4.
Cột (2,3): Cần sơn 1 mặt sau + 1 mặt phải: diện tích 2.
Cả 6 cột đều sơn 6 mặt trên: diện tích 6.
Tổng diện tích: 12+4+12+2+4+2+6=42.
Code tích cực |
---|
Trong 24h |
Trong 7 ngày |
|
Trong 30 ngày |
|
Thống kê |
---|
AC/Sub: 97887/180710 Pascal: 17121 C++: 130348 Python: 33199 Lượt xem/tải tests: 38905 |