Двумерные массивы

55 задач
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: успешные, неуспешные.
Программа получает на вход размеры матрицы n и m (количество строк и столбцов), затем элементы матрицы (n строк по m чисел в каждой). Все числа целые, не превышают по модулю 1000. Программа должна вывести количество локальных максимумов. Элемент является локальным максимумом, если он строго больше всех своих соседей (соседями считаются элементы слева, справа, сверху и снизу, если они существуют).
Программа получает на вход размер квадратной матрицы n, затем элементы матрицы (n строк по n чисел в каждой). Все числа целые, не превышают по модулю 1000. Программа должна вывести сумму элементов, расположенных выше главной диагонали (элементы, где номер столбца больше номера строки при нумерации с 0).
Программа получает на вход размер квадратной матрицы n, затем элементы матрицы (n строк по n чисел в каждой). Все числа целые, не превышают по модулю 1000. Программа должна вывести сумму элементов побочной диагонали (элементы, где сумма номера строки и номера столбца равна n+1 при нумерации с 1).
Программа получает на вход размер квадратной матрицы n, затем элементы матрицы (n строк по n чисел в каждой). Все числа целые, не превышают по модулю 1000. Программа должна вывести сумму элементов главной диагонали (элементы, где номер строки равен номеру столбца).
Программа получает на вход размеры матрицы n и m (количество строк и столбцов), затем элементы матрицы (n строк по m чисел в каждой). Все числа целые, не превышают по модулю 1000. Программа должна вывести n чисел: минимальный элемент в каждой строке (каждое число на отдельной строке).
Программа получает на вход размеры матрицы n и m (количество строк и столбцов), затем элементы матрицы (n строк по m чисел в каждой). Все числа целые, не превышают по модулю 1000. Программа должна вывести максимальный элемент в матрице.
Программа получает на вход размеры матрицы n и m (количество строк и столбцов), затем элементы матрицы (n строк по m чисел в каждой). Все числа целые, не превышают по модулю 1000. Программа должна вывести сумму всех элементов матрицы.
Из большой фотографии нужно вырезать прямоугольную область для аватарки. Программа получает на вход размеры исходной фотографии n и m, затем n строк по m чисел - пиксели, затем координаты вырезаемой области: r1, c1, r2, c2 (номера строк и столбцов начальной и конечной точек, нумерация с 1, включительно). Программа должна вывести вырезанную область: сначала её размеры (количество пикселей: по строкам и по столбцам через пробел), затем сами пиксели вырезанной части. Значения пикселей в вырезанной части выводятся построчно через пробел.
Детектор границ помогает найти контуры объектов на фото. Граница - это место, где яркость резко меняется. Программа получает на вход размеры изображения n и m (2<=n,m<=10), затем n строк по m чисел - яркость пикселей, затем порог чувствительности T. Программа должна вывести карту границ: n строк по m чисел (0 или 1). Пиксель является границей (выводим 1), если разница по модулю между ним и хотя бы одним из соседей (сверху, снизу, слева, справа) больше или равна T. Иначе выводим 0. Для крайних пикселей проверяем только существующих соседей. Пиксели в одной строке выводить через один пробел.
Нужно слегка размыть изображение для художественного эффекта. Используем простое размытие: каждый пиксель заменяется на среднее значение его самого и соседей (сверху, снизу, слева, справа). Программа получает на вход размеры изображения n и m, затем n строк по m чисел - яркость пикселей. Программа должна вывести размытое изображение: n строк по m чисел. Для каждого пикселя считаем среднее арифметическое его самого и существующих соседей (для угловых и крайних пикселей соседей меньше). Ответ округлять до целого вниз.
Фотография получилась блёклой! Нужно увеличить контраст: тёмные пиксели сделать ещё темнее, а светлые - ещё светлее. Программа получает на вход размеры фото n и m, затем n строк по m чисел - яркость пикселей (от 0 до 255). Программа должна применить увеличение контраста по правилу:
- Если яркость < 128 (тёмный пиксель): новая_яркость = старая_яркость / 2
- Если яркость >= 128 (светлый пиксель): новая_яркость = 128 + (старая_яркость - 128) / 2
Ответ округлять до целого вниз.

Выведите результат на экран. Числа в строке разделять одним пробелом.
Помните плёночные фотоаппараты? У них были негативы, где светлое становилось тёмным, а тёмное - светлым! Давайте создадим негатив цифрового фото. Программа получает на вход размеры фото n и m, затем n строк по m чисел - яркость пикселей (от 0 до 255, где 0 - чёрный, 255 - белый). Программа должна вывести негатив: n строк по m чисел. Каждый пиксель инвертируется по формуле: новая_яркость = 255 - старая_яркость.
В игровом турнире n команд сыграли с m противниками. Есть матрица результатов (количество побед каждой команды над каждым противником) и матрица весов (сколько очков даёт победа над каждым противником).
Программа получает на вход:
- Размеры n и m
- Матрицу A размера n×m (результаты: A[i][j] = количество побед команды i над противником j)
- Размеры m и k (k всегда равно 1 в этой задаче)
- Матрицу B размера m×1 (веса: B[j][0] = сколько очков даёт одна победа над противником j)

Программа должна вывести n чисел (каждое число в отдельной строке) - общий счёт команды i. 
Вы сделали селфи, но камера всё перевернула зеркально! Нужно отразить картинку по горизонтали (слева направо). Программа получает на вход размеры картинки n и m (высота и ширина), затем n строк по m чисел - пиксели картинки. Программа должна вывести отражённую по горизонтали картинку: n строк по m чисел. Первый столбец становится последним, второй - предпоследним и т.д.
В конкурсе красоты участвуют модели. Строки — модели, столбцы — судьи. Найдите процент (округлённый вниз), который составляет сумма баллов победителя (модели с максимальной суммой) от общей суммы всех баллов всех моделей.

Формат входных данных: Первая строка содержит два целых числа n и m (1 ≤ n, m ≤ 100) — количество моделей и судей. Следующие n строк содержат по m целых положительных чисел — баллы.

Формат выходных данных: Одно целое число — процент максимальной суммы строки от общей суммы (округлённый вниз).
В зоопарке кормят животных. Строки — животные, столбцы — дни недели. В таблице количество килограммов еды. Найдите разницу между максимальной и минимальной суммой по строкам (чтобы понять разброс аппетитов).

Формат входных данных: Первая строка содержит два целых числа n и m (1 ≤ n, m ≤ 100) — количество животных и дней. Следующие n строк содержат по m целых неотрицательных чисел — килограммы еды.

Формат выходных данных: Одно целое число — разница между максимальной и минимальной суммой строк.
В городской больнице ведут статистику вызовов скорой помощи. Строки — районы города, столбцы — дни недели. Найдите самый спокойный день недели (с минимальным количеством вызовов суммарно). 

Формат входных данных: Первая строка содержит два целых числа n и m (1 ≤ n, m ≤ 100) — количество районов и дней. Следующие n строк содержат по m целых неотрицательных чисел — количество вызовов.

Формат выходных данных: Одно целое число — номер столбца с минимальной суммой. Если таких несколько, выведите первый. Нумерация с 1.
В офисе программистов ведут учёт потребления кофе. Строки — программисты, столбцы — дни недели. Найдите номер программиста, который выпил больше всего чашек кофе за неделю.
Формат входных данных: Первая строка содержит два целых числа n и m (1 ≤ n, m ≤ 100) — количество программистов и дней. Следующие n строк содержат по m целых неотрицательных чисел — количество чашек кофе.
Формат выходных данных: Одно целое число — номер строки с максимальной суммой. Если таких несколько, выведите первую. Нумерация с 1.
В кафе "У дяди Васи" ведут учёт посетителей. Строки — недели, столбцы — дни недели (Пн-Вс). Найдите номер дня недели, когда суммарно за все недели было больше всего посетителей. 

Формат входных данных: Первая строка содержит два целых числа n и m (1 ≤ n, m ≤ 100) — количество недель и дней. Следующие n строк содержат по m целых неотрицательных чисел — количество посетителей.
Формат выходных данных: Одно целое число — номер столбца (дня недели) с максимальной суммой. Если таких несколько, выведите первый. Нумерация с 1.
Семья ходит в магазин каждую неделю. В таблице записаны расходы каждого члена семьи в каждый день похода. Строки — члены семьи, столбцы — недели. Подсчитайте, сколько денег потратила вся семья за всё время. 
Формат входных данных: Первая строка содержит два целых числа n и m (1 ≤ n, m ≤ 100) — количество членов семьи и недель. Следующие n строк содержат по m целых неотрицательных чисел — расходы в рублях.
Формат выходных данных: Одно целое число — общая сумма расходов.
Поделиться
Класснуть