ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила
вернуться в форум

Обсуждение задачи 1183. Brackets Sequence

I have WA#9. Who knows where is my fault?
Послано ¥@§@® Δδδ@$☺√ 27 ноя 2007 16:00
If who knows please tell me where is my mistake?

{PASCAL CODE HERE}
var
 t,st:string;
 i:integer;

procedure init;
begin
 readln(st);
 i:=0;  t:=st;
end;

procedure solve1;
begin
 repeat
  inc(i);
  if st[i]='(' then
   begin
    if ((pos(')',st)<>0) and (pos(')',st)>=i)) then
     begin
      st[i]:=' '; st[pos(')',st)]:=' ';
     end;
   end         else
  if st[i]=')' then
   begin
    if ((pos('(',st)<>0) and (pos('(',st)<=i)) then
     begin
      st[i]:=' '; st[pos('(',st)]:=' ';
     end;
   end         else
  if st[i]='[' then
   begin
    if ((pos(']',st)<>0) and (pos(']',st)>=i)) then
     begin
      st[i]:=' '; st[pos(']',st)]:=' ';
     end;
   end         else
  if st[i]=']' then
   begin
    if ((pos('[',st)<>0) and (pos('[',st)<=i)) then
     begin
      st[i]:=' '; st[pos('[',st)]:=' ';
     end;
   end;
 until i=length(st);
end;

procedure solve2;
begin
 i:=0;
 repeat
  inc(i);
  if st[i]='(' then
   begin
    insert(')',t,i+1); insert(' ',st,i+1); inc(i);
   end;
  if st[i]=')' then
   begin
    insert('(',t,i); insert(' ',st,i+1); inc(i);
   end;
  if st[i]='[' then
   begin
    insert(']',t,i+1); insert(' ',st,i+1); inc(i);
   end;
  if st[i]=']' then
   begin
    insert('[',t,i); insert(' ',st,i+1); inc(i);
   end;
 until i=length(st);
end;

procedure print;
begin
 writeln(t);
end;

begin
 init;
 solve1;
 solve2;
 print;
end.
Re: I have WA#9. Who knows where is my fault?
Послано KIRILL(ArcSTUpid coder:) 27 ноя 2007 19:04
sorry, but your approach is incorrect
use dp

Edited by author 27.11.2007 19:05