比赛 |
20101116 |
评测结果 |
WWWWWWWWWW |
题目名称 |
打砖块 |
最终得分 |
0 |
用户昵称 |
王者自由 |
运行时间 |
0.000 s |
代码语言 |
Pascal |
内存使用 |
0.00 MiB |
提交时间 |
2010-11-16 09:55:06 |
显示代码纯文本
program gamea;
var n,m,k,i,j:integer;
F:array[0..200,0..200]of integer;
B:array[0..200,0..200]of 0..1;
c:char; w:longint;
function Take(var k:integer;j:integer):longint;
var i:integer; y:longint;
begin
k:=k-1+B[1,j];
y:=F[1,j];
F[0,j]-=1;
for i:=1 to F[0,j] do
begin
F[i,j]:=F[i+1,j];
B[i,j]:=B[i+1,j];
end;
F[F[0,j]+1,j]:=0;
exit(y);
end;
procedure Find(k:integer);
var i,j:integer; max:longint;
begin
if k=0 then exit;
max:=0;
for i:=1 to m do {没有处理Y的情况}
if F[1,i]>max
then begin j:=i; max:=F[1,i]; end;
w+=Take(k,j);
Find(k);
end;
begin
assign(input,'gamea.in'); reset(input);
assign(output,'gamea.out'); rewrite(output);
readln(n,m,k);
for i:=1 to n do
for j:=1 to m do
begin
read(F[n-i+1,j]);
read(c); read(c);
if c='Y' then B[n-i+1,j]:=1 else B[n-i+1,j]:=0;
end;
for i:=1 to m do F[0,i]:=n;
Find(k);
writeln(w);
close(input); close(output);
end.