Untitled
unknown
c_cpp
2 years ago
1.5 kB
9
Indexable
#include <iostream>
#include <vector>
#include <limits>
using namespace std;
int main() {
// Вводим размер матрицы
int n, m;
cin >> n >> m;
// Создаем и заполняем матрицу
vector<vector<int>> matrix(n, vector<int>(m));
for (int row = 0; row < n; row++) {
for (int col = 0; col < m; col++) {
cin >> matrix[row][col];
}
}
// Вводим количество команд
int cnt;
cin >> cnt;
// Обрабатываем каждую команду
for (int _ = 0; _ < cnt; _++) {
// Вводим команду и ее параметры
int command, rl, cl, rr, cr, val;
cin >> command;
if (command == 1) {
// Команда 1: увеличить элемент матрицы на заданное значение
cin >> rl >> cl >> val;
matrix[rl - 1][cl - 1] += val;
} else {
// Команда 2: найти максимальный элемент в подматрице
cin >> rl >> cl >> rr >> cr;
int ans = numeric_limits<int>::min();
for (int row = rl - 1; row < rr; row++) {
for (int col = cl - 1; col < cr; col++) {
ans = max(matrix[row][col], ans);
}
}
// Выводим ответ
cout << ans << endl;
}
}
return 0;
}
Editor is loading...
Leave a Comment