Пример #1
0
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
Пример #2
0
 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
Пример #3
0
 def __init__(self, size, keys):
     self._value = Bitset(size)
     self._size = size
     self._keys = keys
     self._hasher = Hasher()