Распечатать прямоугольный шаблон с заданным центром
Опубликовано: 22 Сентября, 2022
Даны 3 положительных целых числа c1, c2 и n, где n — размер двумерной квадратной матрицы. Задача состоит в том, чтобы напечатать матрицу, заполненную прямоугольным узором с координатами центра c1, c2 такими, что 0 <= c1, c2 < n.
Примеры:
Input: c1 = 2, c2 = 2, n = 5
Output:
2 2 2 2 2
2 1 1 1 2
2 1 0 1 2
2 1 1 1 2
2 2 2 2 2Input: c1 = 3, c2 = 4, n = 7
Output:
4 3 3 3 3 3 3
4 3 2 2 2 2 2
4 3 2 1 1 1 2
4 3 2 1 0 1 2
4 3 2 1 1 1 2
4 3 2 2 2 2 2
4 3 3 3 3 3 3
Подход: Эту проблему можно решить с помощью двух вложенных циклов. Выполните следующие шаги, чтобы решить эту проблему:
- Выполните итерацию в диапазоне [0, N-1], используя переменную i, и выполните следующие шаги:
- Выполните итерацию в диапазоне [0, N-1], используя переменную j, и выполните следующие шаги:
- Выведите максимум из abs(c1 – i) и abs(c2 – j).
- Распечатать новую строку.
- Выполните итерацию в диапазоне [0, N-1], используя переменную j, и выполните следующие шаги:
Ниже приведена реализация вышеуказанного подхода:
Временная сложность: O(N ^ 2)
Вспомогательное пространство: O(1)