Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

BCSON - Sơn cột

Trên một nền phẳng đã được chia thành các lưới ô vuông đơn vị gồm mxn ô, người ta đặt chồng khít lên nhau các khối lập phương đơn vị 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, hãy tính số đơn vị diện tích cần sơn.

Dữ liệu: 

l  Dòng đầu tiên chứa hai số nguyên dương m, n ≤ 1000 là kích thước của lưới nền (m hàng, n cột)

l  m dòng tiếp theo, dòng thứ i chứa n số nguyên dương có giá trị không quá 109, số thứ j biểu 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 mt dòng ca Input file cách nhau ít nht mt du cách

Kết qu: Ghi ra một số nguyên duy nhất là diện tích cần sơn.

Example

Input:

2 3

4 3 4

1 2 1
Output:

42

ID RESULT TIME
code...



Được gửi lên bởi:adm
Ngày:2011-10-19
Thời gian chạy:0.200s-0.600s
Giới hạn mã nguồn:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Ngôn ngữ cho phép:ASM32-GCC ASM32 MAWK BC C CSHARP C++ 4.3.2 CPP CPP14 COFFEE LISP sbcl DART FORTH GO JAVA JS-RHINO JS-MONKEY KTLN OCT PAS-GPC PAS-FPC PERL PERL6 PROLOG PYTHON PYTHON3 PY_NBC R RACKET SQLITE SWIFT UNLAMBDA
Nguồn bài:Thầy Lê Minh Hoàng

hide comments
2020-03-16 07:59:04
https://ideone.com/wRJNuY

Last edit: 2020-03-16 10:24:43
2018-06-25 05:22:42
coi số ô là (m+1)x(n+1) lúc đó chỉ cần xét 1 vòng for và 4 cái if thôi.
-nếu bên trái có cột cao hơn thì lấy cột trái trừ cột này ta được số mặt bên trái của ô này!
-nếu bên phải có cột cao hơn thì lấy cột phải trừ cột này ta được số mặt bên phải của ô này!
tương tự với trước sau! như thế sẽ tìm đc số ô cần sơn bên mặt của tất cả các ô. Kết quả cộng thêm số cột (sơn đỉnh cột) nữa là oke
2015-04-19 19:16:15 Con Bò Huyền Thoại
http://kienthuc24h.com/bcson-son-cot-spoj/
2014-09-16 09:59:49 Siu Nhân Vàng LOL
const maxN = 1000;
maxM = 1000;
fi = 'bcson.inp';
fo = 'bcson.out';


var a: array[1..maxN,1..maxN] of longint;
b: array[1..maxM,1..maxM] of longint;
s, m, n, i, j : longint;

begin
assign(input,fi); reset(input);
assign(output,fo); rewrite(output);
readln(m,n);

s:=m*n;
for i:=1 to m do
begin
for j:=1 to n do
begin
read(a[i,j]);
if i > 1 then s:=s + abs(a[i,j] - a[i-1,j]);
if j > 1 then s:=s + abs(a[i,j] - a[i,j-1]);
end;
readln;
end;


for j:=1 to n do s:= s + a[1,j] + a[m,j];
for i:=1 to m do s:= s + a[i,1] + a[i,n];


writeln(s);

close(input); close(output);
end.

2013-09-17 09:07:42 Enigami White
Bài này những ô không có cột có phải sơn mặt trên không ad?

Last edit: 2013-09-17 09:10:57
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.