bracket.pas

来自「PASCAL光盘资料PASCAL光盘资料PASCAL光盘资料」· PAS 代码 · 共 38 行

PAS
38
字号
program E2_4;{bracket}
var s:string;
    a:array[0..255] of integer;
    i,j:integer;

begin
 assign(input,'bracket.in');
 assign(output,'bracket.out');
 reset(input);
 readln(s);
 close(input);
 j:=0;
 for i:=1 to length(s) do
  a[i]:=pos(s[i],'([.])')-3;
 for i:=1 to length(s) do
   if a[i]>0 then
      if a[i]+a[j]=0 then
        begin
         a[i]:=0;a[j]:=0;
         while (j>0) and (a[j]>=0) do dec(j);
        end
        else
      else j:=i;
 rewrite(output);
 for i:=1 to length(s) do
  if a[i]=0 then write(s[i])  else
    case a[i] of
     -2,2:write('()');
     -1,1:write('[]');
    end;
 writeln;
 close(output)
end.




⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?