Написать программу, которая вводит маршрут Тезея в лабиринте и находит обратный путь, по которому Тезей сможет выйти из лабиринта,
271
285
Ответы на вопрос:
var
s, t : string;
a : array [1..2,0..200] of integer;
i, j, k : integer;
begin
assign(input,'input.txt'); reset(input);
assign(output,'output.txt'); rewrite(output);
readln(s); t:='';
k:=0; a[1,k]:=0; a[2,k]:=0;
for i:=1 to length(s) do
begin
k:=k+1;
if s[i]='N' then begin a[1,k]:=a[1,k-1]; a[2,k]:=a[2,k-1]+1; t:=t+'S' end;
if s[i]='E' then begin a[1,k]:=a[1,k-1]+1; a[2,k]:=a[2,k-1]; t:=t+'W' end;
if s[i]='S' then begin a[1,k]:=a[1,k-1]; a[2,k]:=a[2,k-1]-1; t:=t+'N' end;
if s[i]='W' then begin a[1,k]:=a[1,k-1]-1; a[2,k]:=a[2,k-1]; t:=t+'E' end;
j:=0;
while (a[1,j]<>a[1,k]) or (a[2,j]<>a[2,k]) do j:=j+1;
if j<k then
begin
delete(t,j+1,k-j);
k:=j
end
end;
for i:=length(t) downto 1 do write(t[i])
end.
s, t : string;
a : array [1..2,0..200] of integer;
i, j, k : integer;
begin
assign(input,'input.txt'); reset(input);
assign(output,'output.txt'); rewrite(output);
readln(s); t:='';
k:=0; a[1,k]:=0; a[2,k]:=0;
for i:=1 to length(s) do
begin
k:=k+1;
if s[i]='N' then begin a[1,k]:=a[1,k-1]; a[2,k]:=a[2,k-1]+1; t:=t+'S' end;
if s[i]='E' then begin a[1,k]:=a[1,k-1]+1; a[2,k]:=a[2,k-1]; t:=t+'W' end;
if s[i]='S' then begin a[1,k]:=a[1,k-1]; a[2,k]:=a[2,k-1]-1; t:=t+'N' end;
if s[i]='W' then begin a[1,k]:=a[1,k-1]-1; a[2,k]:=a[2,k-1]; t:=t+'E' end;
j:=0;
while (a[1,j]<>a[1,k]) or (a[2,j]<>a[2,k]) do j:=j+1;
if j<k then
begin
delete(t,j+1,k-j);
k:=j
end
end;
for i:=length(t) downto 1 do write(t[i])
end.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Другие предметы
-
Георгий0726.10.2021 20:11
-
grinevvlad98xuy16.01.2021 01:29
-
YukineeKawaiiNo11.04.2020 15:12
-
sasyli33329.03.2021 21:55
-
Дрррррррррр01.09.2022 12:27
-
katalinatraist17.12.2022 09:19
-
стрелыамура212.01.2020 16:21
-
tkstkn28.03.2023 10:17
-
Настя19041128.06.2021 21:49
-
BestPe07.04.2023 18:01
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.