Напишите программу, которая находит минимальный и максимальный элементы в матрице. Если в...

0 голосов
896 просмотров

Напишите программу, которая находит минимальный и максимальный элементы в матрице. Если в матрице есть несколько одинаковых минимальных (максимальных) элементов, нужно найти индексы первого такого элемента в порядке обхода по строкам: сверху вниз, слева направо.

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

В первой строке записаны через пробел размеры матрицы: количество строк N и количество столбцов M ( 1 ≤ N , M ≤ 100 ). В следующих N строках записаны строки матрицы, в каждой – по M натуральных чисел, разделённых пробелами.

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

В первой строке программа должна вывести индексы минимального элемента (строку и столбец), а затем – его значение. Нумерация строк и столбцов начинается с единицы. Все числа разделены пробелами. Во второй строке выводится информация о максимальном элементе в том же формате.

Примеры

входные данные

4 5
1 3 2 54 24
75 12 3 46 9
13 26 56 9 12
14 90 97 6 34

выходные данные

1 1 1
4 3 97


Информатика (15 баллов) | 896 просмотров
Дан 1 ответ
0 голосов
Правильный ответ
// PascalABC.NET 3.2, сборка 1427 от 24.04.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var n,m:integer;
  Read(n,m);
  var a:=ReadMatrInteger(n,m);
  var t:=a.ElementsWithIndexes.MinBy(x->x[2]);
  Println(t[0]+1,t[1]+1,t[2]);
  t:=a.ElementsWithIndexes.MaxBy(x->x[2]);
  Println(t[0]+1,t[1]+1,t[2]);
end.

Пример
4 5
1 3 2 54 24
75 12 3 46 9
13 26 56 9 12
14 90 97 6 34
1 1 1
4 3 97
(150k баллов)