Поиск


ограничение по времени на тест
1 секунда
ограничение по памяти на тест
512 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

На клетчатом поле размера $$$n \times n$$$, где $$$n = 2k+1$$$ — нечетное число, необходимо изобразить ромб.

Центром поля будем называть клетку $$$(k + 1, k + 1)$$$. Расстояние между двумя клетками $$$(x_1, y_1)$$$ и $$$(x_2, y_2)$$$ будем называть величину $$$|x_1 - x_2| + |y_1 - y_2|$$$.

Ромб с параметрами $$$(a, b)$$$ — это множество клеток, расстояние от которых до центра лежит в диапазоне от $$$a$$$ до $$$b$$$, включительно.

По заданным $$$n$$$, $$$a$$$ и $$$b$$$ изобразите ромб.

Входные данные

На первой строке ввода находится целое число $$$n$$$ ($$$1 \le n \le 201$$$, $$$n$$$ нечетно).

На второй строке ввода находится целое число $$$a$$$. На третьей строке ввода находится целое число $$$b$$$ ($$$0 \le a \le b$$$, если $$$k$$$ таково, что $$$n = 2k+1$$$, то $$$b \le k + 1$$$).

Выходные данные

Выведите $$$n$$$ строк по $$$n$$$ символов. Клетка ромба обозначается символом «*», клетка, не лежащая в ромбе, обозначается символом «.».

Пример

Входные данные
9
2
3
Выходные данные
.........
....*....
...***...
..**.**..
.**...**.
..**.**..
...***...
....*....
.........

Сделаем ровно то, что написано в условии задачи.
n = int(input())
a = int(input())
b = int(input())

x = [["."] * n for i in range(n)]

k = n // 2

for i in range(n):
    for j in range(n):
        if a <= abs(i - k) + abs(j - k) <= b:
            x[i][j] = "*"

for z in x:
    print("".join(z))

Для отправки решения задачи необходимо авторизоваться!