def generate_sudoku(difficulty): return remove_numbers(Generation.make_full_grid(3), difficulty)
ftime = timel / 100.0 return ftime def solve_timing(glist): timel = 0.0 for x in glist: start = time.time() Solving.solve_grid(x) end = time.time() timel = timel + (end - start) ftime = timel / 100.0 return ftime def constraint_solve_timing(glist): timel = 0.0 for x in glist: start = time.time() SolveConstraintPropagation.constraint_solve(x) end = time.time() timel = timel + (end - start) ftime = timel / 100.0 return ftime grids = [Generation.make_full_grid(3) for x in range(0, 500)] print("Remove time: " + str(remove_timing(copy.deepcopy(grids)))) print("RecursiveRemove time: " + str(rec_remove_timing(copy.deepcopy(grids)))) print("Solving time: " + str(solve_timing(copy.deepcopy(grids)))) print("SolveConstraintPropagation: " + str(constraint_solve_timing(copy.deepcopy(grids))))
def rec_generate_sudoku(difficulty): grid = Generation.make_full_grid(3) additions = random.randint(min_remove(difficulty), max_remove(difficulty)) return rec_remove_numbers(grid, additions, 0, lowerbound(difficulty), [x for x in range(0, 9)], [x for x in range(0, 9)], [])