Maksimumların arasında minimum#9565

Maksimumların arasında minimum (Həll təhlili)

Hər bir massiv sətrində onun maksimal elementini tapaq. Qoy -ci sətirin maksimal elementini saxlasın. Sonra massivində minimal elementi tapaq.

Nümunə

Gətirilmiş nümunəni nəzərdən keçirək. Hər bir sətirdən sonra onun ən böyük elementini yazacağıq. Bu ən böyük elementlər arasında ən kiçiyini vurğulayacağıq.

Alqoritmin reallaşdırılması

İşçi massivlərini elan edək.

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

Massiv ölçüləri və oxuyuruq.

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

Çünki -ci sətirin maksimal elementini saxlayacaq (1 \le i \le n), onu ən kiçik mümkün qiymətlə başlatırıq.

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

Matris sətrlərini gəzirik.

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

-ci sətirin elementlərini oxuyuruq və onun maksimal qiymətini tapırıq, sonra -də saxlayırıq.

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

massivində ən kiçik elementi tapaq.

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

Nəticəni çıxış edirik.

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

Python reallaşdırılması

Massiv ölçüləri və oxuyuruq.

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

siyahısını başlatırıq.

res = []

Matris sətrlərini gəzirik.

for i in range(n):

Hazırki matris sətirinin elementlərini oxuyuruq və onun maksimal qiymətini tapırıq, sonra siyahısının sonuna əlavə edirik.

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

massivində ən kiçik elementi tapırıq və onu çıxış edirik.

ans = min(res)
print(ans)