introduce bitloops

This commit is contained in:
mike
2026-01-17 21:43:17 +01:00
parent 938d2ac66b
commit 19812d81e5
5 changed files with 34 additions and 36 deletions

View File

@@ -402,20 +402,19 @@ public class Main {
}
static Clues generateNewClues(Rng rng, Opts opts) {
var masker = new Masker(rng, new int[STACK_SIZE], Masker.Clues.createEmpty());
var mask = masker.generateMask(opts.clueSize, opts.pop, opts.gens, opts.offspring);
return mask;
return masker.generateMask(opts.clueSize, opts.pop, opts.gens, opts.offspring);
}
static PuzzleResult _attempt(Rng rng, Dict dict, Opts opts) {
long t0 = System.currentTimeMillis();
val multiThreaded = Thread.currentThread().getName().contains("pool");
long t0 = System.currentTimeMillis();
TOTAL_ATTEMPTS.incrementAndGet();
val mask = generateNewClues(rng, opts);
//val mask = generateClues();
if (mask == null) return null;
val multiThreaded = Thread.currentThread().getName().contains("pool");
var slots = Masker.extractSlots(mask, dict.index());
val slotInfo = Masker.scoreSlots(slots);
var grid = mask.toGrid();
var filled = fillMask(rng, slotInfo, grid, multiThreaded);
val slotInfo = Masker.slots(mask, dict.index());
var grid = mask.toGrid();
var filled = fillMask(rng, slotInfo, grid, (!Main.VERBOSE || multiThreaded));
if (!multiThreaded) {
System.out.print("\r" + Strings.padRight("", 120) + "\r");