Восемь задач, в которых таблица читается целиком, а используется только её
часть: одна клетка, несколько клеток, одна строка или один столбец. Каждый раз
сначала прочитайте таблицу в vector<vector<int>>.
- Строки и столбцы в условиях нумеруются с 1: клетка
(r, c)— этоa[r - 1][c - 1]. В задачах Значение в клетке, Значение на границе и Обмен строк вторая строка ввода (rиcилиpиq) идёт до таблицы. - Четыре угла:
a[0][0],a[0][m - 1],a[n - 1][0],a[n - 1][m - 1]— даже приnилиm, равном 1, эти формулы работают. - Центр таблицы и Крест:
nнечётное, средний индекс —n / 2. Крест — это цикл по средней строке (номер строки фиксирован), а потом цикл по среднему столбцу (номер столбца фиксирован). - Первая и последняя строки и Первый и последний столбцы: один цикл по
jпри фиксированной строке; один цикл поiпри фиксированном столбце. - Значение на границе: на краю — значит в первой или последней строке или
в первом или последнем столбце: четыре условия через
||. - Обмен строк:
swap(a[p - 1], a[q - 1])меняет местами две строки целиком; затем выведите таблицу. - Создавайте вектор по прочитанным
nиm, а не фиксированного размера, и не убирайте строки быстрого ввода: некоторые тесты большие.