Мини-урок · перед практикой

Шахматная доска

Выбираем символ по чётности суммы индексов.

Как к ней подойти

Разберитесь, как работать со строками и столбцами двумерного массива, не путая индексы.

Коротко о теме

Двумерный массив читают по двум координатам: сначала строка, затем столбец. Вложенные циклы обходят все ячейки или только нужную часть таблицы. Сверьте размеры массива и границы обоих индексов.

Ключевая идея · Формула для клетки

Индексы начинаются с нуля, поэтому в левом верхнем углу чётная сумма и точка.

Проверьте перед запуском

  • Нечётная ширина не должна нарушать чередование начала строк.

Сравните свой подход

Ниже - готовое решение, другой способ, если он есть, и важные детали проверки.

Ваше принятое решение

Рекомендуемое решение: Формула для клетки

Индексы начинаются с нуля, поэтому в левом верхнем углу чётная сумма и точка.

n, m = map(int, input().split())
a = [['.' if (i + j) % 2 == 0 else '*' for j in range(m)] for i in range(n)]
for row in a:
    print(*row)

Время: O(nm). Память: O(nm), создана матрица по условию.

Другой способ: Чередование символов

Переключаем символ после каждой клетки, а начальный символ — после каждой строки.

n, m = map(int, input().split())
a = []
first = '.'
for i in range(n):
    row = []
    char = first
    for j in range(m):
        row.append(char)
        char = '*' if char == '.' else '.'
    a.append(row)
    first = '*' if first == '.' else '.'
for row in a:
    print(*row)

Время: O(nm). Память: O(nm).