def generate_board(n: int, m: int, prob: float = 0.5): """ Generates a random matrix of NxM cells where every cell has a 50% probablility of being marked or not. """ b = Bitset(n, m) for i in range(n): for j in range(m): if rd.random() <= prob: b[i, j] = True return b
def generate_board(self): game = self.game solution = self.lists board = Bitset(game.rows, game.columns) for i, line in enumerate(solution): game_line = game.lists[0][i] sol_line = solution[i] idx = 0 for k in range(len(sol_line) - 1): idx += sol_line[k] for j in range(game_line[k]): board[i, idx] = True idx += 1 self._board = board self.board_updated = True return board
def __init__(self, size, keys): self._value = Bitset(size) self._size = size self._keys = keys self._hasher = Hasher()