22 lines
697 B
Go
22 lines
697 B
Go
|
package solver
|
||
|
|
||
|
// Set the workload by setting solver.row1s
|
||
|
func (solver *Solver) setWorkload(agents []int) {
|
||
|
var start int = 0
|
||
|
var finish int = 0
|
||
|
for key, value := range agents {
|
||
|
if key == solver.Controller.Part-1 {
|
||
|
finish = start + value
|
||
|
break
|
||
|
} else {
|
||
|
start += value
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Set the shortened set of instructions
|
||
|
solver.row1s = solver.row1s[start:finish]
|
||
|
|
||
|
// Recalculate how much we need to grind through
|
||
|
solver.Iter = uint64(len(solver.row1s)) * uint64(len(solver.row2s)) * uint64(len(solver.row3s)) * uint64(len(solver.row4s)) * uint64(len(solver.row5s)) * uint64(len(solver.row6s)) * uint64(len(solver.row7s)) * uint64(len(solver.row8s)) * uint64(len(solver.row9s))
|
||
|
}
|