def create_board_5():
    matrix = [[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0],
              [3, 1, 0, 0, 2], [5, 0, 0, 0, 0]]
    constraints = [
        Constraint(4, 4, 3, 4),
    ]

    return BoardFutoshiki(matrix, constraints)
Ejemplo n.º 2
0
def get_boards(folder_name):
    boards = []
    for filename in listdir(getcwd() + '/' + folder_name + '/'):
        if 'futoshiki' in folder_name:
            problem = read_futoshiki_problem(filename=filename, prefix=getcwd() + '/' + folder_name + '/')
            board = BoardFutoshiki(matrix=problem['matrix'], constraints=problem['constraints'], name=problem['name'])
            boards.append(board)
        elif 'skyscrapper' in folder_name:
            problem = read_skyscrapper_problem(filename=filename, prefix=getcwd() + '/' + folder_name + '/')
            board = BoardSkyscrapper(N=problem['N'], constraints=problem['constraints'], name=problem['name'])
            boards.append(board)
        else:
            print('WARNING! there is no such game')
    return boards
Ejemplo n.º 3
0
def test_for_futoshiki_file(filename):
    print(filename)
    problem = read_futoshiki_problem(filename, prefix)
    board = BoardFutoshiki(problem['matrix'], problem['constraints'])
    solver = Solver(board)
    results = solver.solve()

    print(' number of results: ' + str(len(results)))
    for result in results:
        print(result)

    if not check_if_unique(results):
        global uniqueq
        unique = False
 def test_result_of_solving_futoshiki_4_1(self):
     problem = read_futoshiki_problem('futoshiki_4_1.txt')
     board = BoardFutoshiki(matrix=problem['matrix'], constraints=problem['constraints'])
     solver = Solver(board)
     results = solver.solve()
 def test_solving_futoshiki_4_2_doesnt_crash_program(self):
     problem = read_futoshiki_problem('futoshiki_4_2.txt')
     board = BoardFutoshiki(matrix=problem['matrix'], constraints=problem['constraints'])
     # print(board.matrix)
     solver = Solver(board)
     results = solver.solve()
def create_simple_board():
    matrix = [[1, 0], [0, 0]]
    return BoardFutoshiki(matrix, [])
def create_board_3():
    matrix = [[2, 0, 0], [0, 0, 0], [0, 0, 0]]

    constraints = [Constraint(0, 0, 1, 0)]

    return BoardFutoshiki(matrix, constraints)
Ejemplo n.º 8
0
 def test_board_checks_win_condition(self):
     matrix = create_expected_result_matrix()
     solved_board = BoardFutoshiki(matrix=matrix, constraints=[])
     unsolved_board = create_board()
     self.assertFalse(unsolved_board.win_check())
     self.assertTrue(solved_board.win_check())