В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
maksimmolotov2
maksimmolotov2
20.11.2020 01:44 •  Информатика

Ваня рисует прямоугольник и разбивает его на M строк и N столбцов. Он заполняют некоторые ячейки монетками "Х". Две разные пустые ячейки заполняет человечком "Y" и сундуком "В". Человечек может передвигаться в соседнюю ячейку (соседними считаются ячейки, граничащие по стороне), а также человек может передвигать сундук для этого нужно встать в соседнюю к сундуку ячейку и толкнуть его от себя (сходит на ячейку к сундуку). При этом сундук передвинется на одну соседнюю ячейку в направлении, заданном толчком, а человечек переместится в ячейку, где только что находился клад. Все объекты должны быть внутри прямоугольника. В прямоугольнике могут остаться пустые ячейка ".". Задача человечка вытолкнуть клад из прямоугольника, выход из прямоугольника Ваня обозначает буквой "Т". Необходимо написать программу, которая определяет последовательность толчков и передвижений человечка, следуя которой сундук можно передвинуть к выходу (выход находится в пустой ячейке). Так как клад очень тяжелый, количество толчков должно быть минимальным. При наличии нескольких оптимальных последовательностей следует указать любую из них. Пример прямоугольника

. . Y

. B .

T X X

Формат входных данных

Первая строка содержит числа M и N . Следующие M строк содержат описание лабиринта. Каждая строка состоит из N символов, описывающих ячейки лабиринта: заполненная монетками ячейка обозначается латинской буквой "X", пустая ячейка обозначается символом "." (ASCII код 46), начальная позиция человечка — буквой "Y", начальная позиция сундука — латинской буквой "В", выход — латинской буквой "Т".

Формат выходных данных

Если решения не существует, то выводится "NO". Иначе, в первой строке выходного должно содержаться слово "YES", а во второй строке — последовательность символов, определяющая действия человечка, в частности, символы "w", "e", "n", "s" обозначают передвижения человечка на запад, восток, север и юг соответственно, а символы "W", "E", "N", "S" обозначают толчки человечка в соответствующих направлениях.

Пример ввода/вывода

Ввод Вывод

3 3 YES

..Y sWnwS

.B.

TXX

Показать ответ
Ответ:
87009522377
87009522377
17.12.2020 09:16

Program n1;
Uses CRT;
Const n=15;
Var A: array[1..n] of integer; B: array[1..n] of integer;
i,k,max: integer;
begin
randomize;
clrscr;
Writeln('ishodny massiv');
For i:=1 to n do
begin
a[i]:=random(100);
a[i]:=a[i]-50;
write(a[i]:4);
end;
writeln;
writeln('polychenny massiv');
max:=0;
For i:=1 to n do
begin
b[i]:=-a[i];
write(b[i]:4);
If a[i]=b[i] then k:=k+1;
If (b[i]>0)and(b[i]>max) then max:=b[i];
If (b[i]<0)and(-b[i]>max) then max:=-b[i];
end;
writeln;
Writeln('Kolychestvo neizmenyvshihsa elementov=',k,', samyi bolshoy po modyly element raven =',max);
writeln
end.

0,0(0 оценок)
Ответ:
МААклерша
МААклерша
12.07.2022 03:28

Первая

Program n1;
Uses CRT;
Var a,b,c,k: integer;
begin
Writeln('Vvedite a,b,c');
Readln(a,b,c);
If (a=b)and(b=c) then begin k:=1; writeln('Ravnostoronnij') end else
If (a=b)or(b=c)or(a=c) then begin k:=1; writeln('Ravnobedrennij'); end;
If (sqr(a)=sqr(b)+sqr(c))or(sqr(b)=sqr(a)+sqr(c))or(sqr(c)=sqr(b)+sqr(a))
then begin k:=1; writeln('Pryamoygolnij'); end;
If (a>b+c)or(b>a+c)or(c>a+b) then begin k:=1; writeln('treygolnik nelza sostavit'); end;
If k=0 then writeln('Treygolnik Raznostoronnij');
readln
end.

 

 

Вторая 

Program n1;
Uses CRT;
Var a,b,c: integer;
begin
ClrScr;
Writeln('Vvedite a,b,c');
Readln(a,b,c);
If (a>0)and(b>0)and(c>0) then writeln('Summa kvadratov=',sqr(a)+sqr(b)+sqr(b));
If (a mod 2=0)or(b mod 2=0)or(c mod 2=0) then writeln('Summa =',a+b+c,', Proizvedenie =',a*b*c);
readln
end.

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота