import numpy as np
def make_field(size):
a = np.array([0, 1])
b = np.resize(a, (size, size))
z = b.reshape(size, -1)
return z
вот что у меня получилось, но этот код только работает с нечётными числами
УСЛОВИЕ:
Представьте, что вы пишете компьютерную игру «Шахматы».
Вам надо смоделировать шахматную доску, которая представляет собой numpy-матрицу. Чёрная клетка представляется нулём, а белая — единицей. Если смотреть на доску сверху, то левая верхняя клетка — белая.
Вы уже практически реализовали задачу, ведь вы знаете, что у шахматной доски 8 столбцов и 8 строк, но заказчик вдруг изменил требования и заявил, что в его игре доска может быть произвольного размера, но всегда квадратной, например, 50х50.
Напишите функцию make_field(size), в которую поступает размер доски и которая возвращает требуемый массив numpy. Тип элементов массива должен быть np.int8.
Формат ввода
Тестирующая система будет вызывать вашу функцию, например, так:
make_field(5)
Формат вывода
Программа ничего не должна выводить на экран.
Тестирующая система сравнит массив, полученный в результате работы вашей функции с массивом, который она сформирует сама. Если сравнение будет успешным, то вердикт будет OK, в противном случае будет выведена информация об ошибке.
Полагаю логично доску представлять в виде матрицы. И соответственно у каждой клетки будет свой индивидуальный идентификатор.
О договоре согласен. Вариации различные могут быть.