anja565449
11.06.2020 10:13

Задачка Toxins. В популярной настольной игре задача состоит в том, чтобы провести фишку по определенному маршруту. Поле представляет собой прямоугольник, состоящий из квадратных ячеек. Игрок может за один ход перейти в одну из четырех соседних по сторонам ячеек, не выходя при этом за пределы поля. Игрок начинает свой путь в любой ячейке самого левого столбца и должен попасть в любую клетку самого правого столбца игрового поля. Но отдельные ячейки токсичны, их расположение известно. Вася выяснил, что чем больше расстояние от токсичной ячейки, тем безопаснее маршрут, расстояние рассчитывается как количество ходов ячейками токсичных ячеек до каждой ячейки маршрута ему определить, на какое минимальное расстояние придется подойти к токсичной ячейке, двигаясь по самому безопасному маршруту.
Технические условия. Программа Toxins читает с устройства стандартного ввода первой строки записаны натуральные числа N и M (1 ≤ N, M≤500) - количество строк и столбцов на игровом поле, во второй строке записано натуральное число K (1≤K≤500) - количество токсичных ячеек . В следующих K строке записаны пары чисел Ri Ci (1≤Ri≤N, 1≤Ci≤M) – координаты токсичных ячеек (строка, столбец). Программа выводит на устройство стандартного вывода минимальное расстояние, на которое придется приближаться к токсичной ячейке на безопасном маршруте.
Нужно решить на языке Pascal, в среде жизнь человеку

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
mashcolor
06.04.2020 04:08
9) Запишите значение переменной s, полученное в результате работы следующей программы на языке программирования Паскаль.
Var s, i:integer;
Begin
S := 3;
For i := 2 to 5 do
S := S + 2*i;
Writeln(S);
end.

10) В таблице Sea хранятся данные о количестве россиян, отдыхавших на Черном море (Sea[1] - число россиян в 2001 году, Sea[2] - в 2002 и т.д.). Определите, какое число будет напечатано в результате работы следующей программы, написанной на языке программирования Паскаль.
Var k, s: integer;
Sea: array [1..12] of integer;
begin
Sea[] := 170; Sea[2] := 170;
Sea[3] := 190; Sea[4] := 210;
Sea[5] := 230; Sea[6] := 220;
Sea[7] := 240; Sea[8] := 160;
Sea[9] := 190; Sea[10] := 210; 
Sea[11] := 170; Sea[12] := 170;
s := 100;
For k := 1 to 12 do
if Sea[k] > 220 then
begin
s := s + Sea[k];
end;
Writeln(s);
end.

5) Дан фрагмент электронной таблицы, в первой строке которой записаны числа, а
во второй – формулы.
СМ во вложение.
0,0(0 оценок)
Ответ:
Помошь0
06.04.2020 04:08
Что-то у меня не придумывается меньше, чем за 18 телодвижений.

1. Залил полный бак в 10-литровый
2. Перелил его в 9-литровый. В 10 остался 1 литр
3. 9 опустошил, теперь в нём пусто, а в 10 по-прежнему 1 л.
4. перелил 1 л в 9.
Этот 1 литр - назовём его переходящим остатком.

Опять погнали те же 4 телодвижения, по результатам переходящим остатком будет 2 литра.

Ещё раз - и получили переходящий остаток 3 литра
Ещё раз, и получили 4 литра. К этому моменту сделали этот цикл уже 4 раза, итого 4*4 = 16 движений.

Опять делаем этот же цикл, но достаточно двух первых операций, и в 10-литровом баке получаем остаток 5 литров.

Итого, 16+2 = 18.

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