Мінімум серед максимумів#9565

Мінімум серед максимумів (Розбір)

У кожному рядку масиву знайдемо його максимальний елемент. Нехай містить максимальний елемент -ого рядка. Потім знайдемо мінімальний елемент у масиві .

Приклад

Розглянемо наведений приклад. Поруч з кожним рядком запишемо його найбільший елемент. Найменший серед цих найбільших елементів виділимо.

Реалізація алгоритму

Оголосимо робочі масиви.

int a[101][101], res[101];

Читаємо розміри масиву і .

scanf("%d %d", &n, &m);

Оскільки буде зберігати максимальний елемент -ого рядка (1 \le i \le n), ініціалізуємо його найменшим можливим значенням.

for (j = 1; j <= n; j++)
  res[j] = -101;

Перебираємо рядки матриці.

for (i = 1; i <= n; i++)

Читаємо елементи -ого рядка і знаходимо його максимальне значення, яке зберігаємо у .

  for (j = 1; j <= m; j++)
  {
    scanf("%d", &a[i][j]);
    if (a[i][j] > res[i]) res[i] = a[i][j];
  }

Знаходимо найменший елемент у масиві .

mn = 101;
for (i = 1; i <= n; i++)
  if (res[i] < mn) mn = res[i];

Виводимо відповідь.

printf("%d\n", mn);

Python реалізація

Читаємо розміри масиву і .

n, m = map(int, input().split())

Ініціалізуємо список .

res = []

Перебираємо рядки матриці.

for i in range(n):

Читаємо елементи поточного рядка матриці і знаходимо його максимальне значення, яке додаємо в кінець списку .

  row = list(map(int, input().split()))
  res.append(max(row))

Знаходимо найменший елемент у масиві і виводимо його.

ans = min(res)
print(ans)