EllenOnyschuk
10.02.2020 19:27

с
Однажды царь решил вознаградить одного из своих мудрецов за хорошую работу. Он привел его в прямоугольную комнату размером NxM, в каждой клетке которой лежало несколько килограммов золота. Царь разрешил мудрецу сделать обойти несколько клеток (переходя с клетки, где сейчас находится мудрец, в одну из четырех с ней соседних), и собрать все золото, которое попадется на его пути.

Вам дан маршрут мудреца. Требуется определить, сколько килограммов золота он собрал.

Входные данные

Записано план комнаты. Сначала записано количество строк N, затем - количество столбцов M (1<=N<=20,1<=M<=20).
Затем записано N строк по M чисел в каждой - количество килограммов золота, которое лежит в данной клетке (число от 0 до 50).
Далее записано число X - сколько клеток обошел мудрец. Далее записаны координаты этих клеток (координаты клетки - это два числа: первое определяет номер строки, второе - номер столбца, верхняя левая клетка на плане имеет координаты (1,1), правая нижняя - (N,M)).

Гарантируется, что мудрец не проходил по одной и той же клетке дважды.

Выходные данные
Выведите количество килограммов золота, которое собрал мудрец.

Пример

Вход
3 4
1 2 3 4
5 6 7 8
9 10 11 12
5
1 1
2 1
2 2
2 3
1 3

Выход
22

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
altay2007
03.07.2022 17:28
Var n,m,osn: integer;
function nmbdec(var n,osn: integer): integer;
var nmb,l,s,k: integer;
begin
  nmb:=0;  s:=0;
  k:=n;  l:=1;
  while k>0 do
  begin
    s:=k mod 10;
    k:=k div 10;
    nmb:=nmb+l*s;
    l:=l*osn;
  end;
  Result:=nmb;
end;
{ конец функции}
begin
  write('число:  ');
  readln(n);
  write('квадрат какого числа:  ');
  readln(m);
  osn:=10;
  while osn>=2 do
  begin
     osn:=osn-1;
    if nmbdec(n,osn)=sqr(nmbdec(m,osn)) then
    begin
      writeln('основание системы = ',osn);
      break;
    end;
  end;
end.
0,0(0 оценок)
Ответ:
Nurbibi12
03.05.2021 10:07
Const
  problems : array [0..9] of String = ('x1+5=10', 'x1+5=10', 'x1+5=10', 'x1+5=10', 'x1+5=10', 'x1+5=10', 'x1+5=10','x1+5=10', 'x1+5=10', 'x1+5=10');
  answers : array [0..9] of String = ('-5', '-5', '-5', '-5', '-5', '-5', '-5', '-5', '-5', '-5');
var
  countOfAnswers, counter: integer;
  userAnswer: String;
begin
  countOfAnswers := 0;
  for counter:=0 to 9 do
    begin
      write('Введите ответ уравнения ', problems[counter], ' : ');
      readln(userAnswer);
      if userAnswer = answers[counter] then Inc(countOfAnswers);
    end;
if countOfAnswers > 8 then writeln('Отлично')
    else if countOfAnswers > 5 then writeln('Хорошо')
    else writeln('Плохо');
end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота