切换到宽版
  • 4694阅读
  • 0回复

ural 1008求助 [复制链接]

上一主题 下一主题
离线ste
 
只看楼主 倒序阅读 0 发表于: 2011-02-12
const d:array[1..4,1..2] of integer=((1,0),(0,1),(-1,0),(0,-1));
      s:array[1..4] of char=('R','T','L','B');
var k,i,j,n,m,close:integer;
    a:array[1..100,1..2] of integer;
    b:array[1..100,1..2] of integer;
function pd:boolean;
begin
 pd:=false;
 for k:=1 to m do
  if(b[close,1]+d[i,1]=b[k,1])and (b[close,2]+d[i,2]=b[k,2])then
  begin pd:=true;break;end;
end;
begin
  readln(n);
  for i:=1 to n do
  readln(a[i,1],a[i,2]);
  write(a[1,1],' ',a[1,2]);
  m:=1;    close:=1;
  b[1,1]:=a[1,1];
  b[1,2]:=a[1,2];
  while m<n do
  begin
   writeln;
    for i:=1 to 4 do
    begin
    for j:=1 to n do
    if (b[close,1]+d[i,1]=a[j,1]) and(b[close,2]+d[i,2]=a[j,2])
    and not pd then
     begin
     write(s);
     m:=m+1;
     b[m,1]:=a[j,1];b[m,2]:=a[j,2];
     end;
    end;
  write(',');close:=close+1;
  end;
  writeln;
  writeln('.');
end.
快速回复
限100 字节
 
上一个 下一个