比赛 |
暑假培训B班二测 |
评测结果 |
AAAAAA |
题目名称 |
返回住所 |
最终得分 |
100 |
用户昵称 |
如烟 |
运行时间 |
0.001 s |
代码语言 |
Pascal |
内存使用 |
0.17 MiB |
提交时间 |
2012-07-22 11:23:32 |
显示代码纯文本
const
t:array[1..4,1..2] of integer=((0,1),(-1,0),(0,-1),(1,0));
var
i,j,r,c,s,total:longint;
o:char;
b:array[0..6,0..6] of integer;
procedure try(x,y,k:integer);
var
i:integer;
begin
if (x=1)and(y=c)and (k<=s+1)then begin total:=total+1;exit;end;
if k>s+1 then exit;
for i:=1 to 4 do
if (x+t[i,1]>0) and (x+t[i,1]<=r)and
(y+t[i,2]>0)and (y+t[i,2]<=c)and
(b[x+t[i,1],y+t[i,2]]=0)then
begin
b[x+t[i,1],y+t[i,2]]:=1;
try(x+t[i,1],y+t[i,2],k+1);
b[x+t[i,1],y+t[i,2]]:=0;
end;
end;
begin
assign(input,'backbarn.in');
reset(input);
assign(output,'backbarn.out');
rewrite(output);
readln(r,c,s);
for i:=1 to r do
begin
for j:=1 to c do
begin
read(o);
if o='.' then b[i,j]:=0;
if o='T' then b[i,j]:=1;
end;
readln;
end;
b[r,1]:=1;
try(r,1,1);
write(total);
close(input);
close(output);
end.