Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
7 / 6 / 1
Регистрация: 02.12.2022
Сообщений: 59

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

16.04.2023, 22:54. Показов 1805. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Представьте, что вы пишете компьютерную игру «Шахматы».
Вам надо смоделировать шахматную доску, которая представляет собой numpy-матрицу. Чёрная клетка представляется нулём, а белая — единицей. Если смотреть на доску сверху, то левая верхняя клетка — белая.
Вы уже практически реализовали задачу, ведь вы знаете, что у шахматной доски 8 столбцов и 8 строк, но заказчик вдруг изменил требования и заявил, что в его игре доска может быть произвольного размера, но всегда квадратной, например, 50х50.
Напишите функцию make_field(size), в которую поступает размер доски и которая возвращает требуемый массив numpy. Тип элементов массива должен быть np.int8.

Python
1
2
3
4
5
6
7
8
import numpy as np
 
 
def make_field(size):
    field = np.ones((size, size), dtype=np.int8) 
    field[(size + 1) % 2::2, ::2] = 0
    field[size % 2::2, 1::2] = 0
    return field
Всем добрый день! Программа превышает лимит памяти. Помогите, пожалуйста, как изменить код, чтобы не превышался лимит памяти или времени?

Добавлено через 5 часов 16 минут
Python
1
2
3
4
5
6
7
8
9
10
import numpy as np
 
    
def make_field(size):
    f = np.zeros([size, size], dtype=np.int8)
    for i in range(len(f)):
        for j in range(len(f)):
            if (j % 2 != 1 and i % 2 == 0) or (j % 2 != 0 and i % 2 == 1):
                f[i][j] = 1
    return f
Превышает лимит времени 1 секунда
Код так же не должен превышать лимит памяти 64 мб

Код валится на 6-м тесте, когда тестирующая система вводит:
Python
1
print(make_field(2000))
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.04.2023, 22:54
Ответы с готовыми решениями:

Шахматная доска
Добрый вечер! Есть задача: Напишите функцию board(num, size), создающую графический файл в формате PNG с изображением квадратного...

шахматная доска
Шахматная доска состоит из n×m клеток, покрашенных в чёрный и белый цвет в шахматном порядке. При этом клетка в левом нижнем углу доски...

Шахматная доска
Представьте, что вы пишете компьютерную игру «Шахматы». Вам надо смоделировать шахматную доску, которая представляет собой numpy-матрицу....

1
 Аватар для s_t_r_a_j
526 / 179 / 58
Регистрация: 12.02.2023
Сообщений: 641
17.04.2023, 10:15
Цитата Сообщение от Dezertir747 Посмотреть сообщение
Тип элементов массива должен быть np.int8.
но int8 Целые числа в диапазоне от -128 по 127 (числа размером 1 байт)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.04.2023, 10:15
Помогаю со студенческими работами здесь

Шахматная доска
Представьте, что вы пишете компьютерную игру «Шахматы». Вам надо смоделировать шахматную доску, которая представляет собой numpy-матрицу....

Шахматная доска
Начинающий программист в питоне, не могу решить данную задачу На шахматной доске 8х8 расположены три фигуры: ферзь, ладья и конь....

Задача 'Шахматная доска'
Саша пронумеровала клетки шахматной доски, начиная с левого нижнего угла (клетки a1a1) по горизонталям сверху вниз, внутри горизонтали...

Задача «Шахматная доска»
Условие Даны два числа n и m. Создайте двумерный массив размером n×m и заполните его символами "." и "*" в шахматном...

Ход короля и шахматная нотация
Шахматный король ходит по горизонтали, вертикали и диагонали, но только на одну клетку. Даны две различные клетки шахматной доски,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Вывод данных через динамический список в справочнике
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru