我正在从here修改代码,我希望能够为某一天添加不同长度的轮班(例如,我希望星期五/第4天只有2个轮班)。我的代码总是以错误代码结尾。我相信这是由于我设定的一些限制的内部问题。在
我在类似的程序上看到了一些关于StackOverflow的帖子,但是找不到一个能解决我的具体问题的帖子。在from ortools.sat.python import cp_model
class employeePartialSolutionPrinter(cp_model.CpSolverSolutionCallback):
"""Print intermediate solutions."""
def __init__(self, shifts, num_employee, num_days, num_shifts, sols):
cp_model.CpSolverSolutionCallback.__init__(self)
self._shifts = shifts
self._num_employee = num_employee
self._num_days = num_days
self._num_shifts = num_shifts
self._solutions = set(sols)
self._solution_count = 0
def on_solution_callback(self):
self._solution_count += 1
if self._solution_count in self._solutions:
print('Solution %i' % self._solution_count)
for d in range