Untitled

 avatar
unknown
c_cpp
a year ago
1.5 kB
4
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