From cc0191f4945e0bdbcf1a0994d4acc86736d507eb Mon Sep 17 00:00:00 2001 From: mike Date: Sat, 10 Jan 2026 01:05:11 +0100 Subject: [PATCH] Gather data --- src/main/java/puzzle/Main.java | 3 +-- src/main/java/puzzle/SwedishGenerator.java | 5 +++-- src/test/java/puzzle/MainTest.java | 3 +-- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/src/main/java/puzzle/Main.java b/src/main/java/puzzle/Main.java index dd14157..64de30a 100644 --- a/src/main/java/puzzle/Main.java +++ b/src/main/java/puzzle/Main.java @@ -12,7 +12,6 @@ import java.time.format.DateTimeFormatter; import java.util.*; import java.util.concurrent.*; import java.util.concurrent.atomic.AtomicLong; -import java.util.stream.Collectors; import static puzzle.Export.*; import static puzzle.SwedishGenerator.*; @@ -342,7 +341,7 @@ public class Main { TOTAL_ATTEMPTS.incrementAndGet(); var swe = new SwedishGenerator(rng); var mask = swe.generateMask(opts.pop, opts.gens); - var filled = new CSP(rng).fillMask(mask, dict.index(), 200, opts.fillTimeout); + var filled = new CSP(rng).fillMask(mask, dict.index(), opts.fillTimeout); TOTAL_NODES.addAndGet(filled.stats().nodes); TOTAL_BACKTRACKS.addAndGet(filled.stats().backtracks); diff --git a/src/main/java/puzzle/SwedishGenerator.java b/src/main/java/puzzle/SwedishGenerator.java index b4eb54e..d588011 100644 --- a/src/main/java/puzzle/SwedishGenerator.java +++ b/src/main/java/puzzle/SwedishGenerator.java @@ -35,6 +35,7 @@ public record SwedishGenerator(Rng rng) { //@formatter:off @FunctionalInterface interface SlotVisitor { void visit(int key, long packedPos, int len); } //@formatter:on + static final int LOG_EVERY_MS = 200; static final int BAR_LEN = 22; static final int C = Config.PUZZLE_COLS; static final double CROSS_R = (C - 1) / 2.0; @@ -751,7 +752,7 @@ public record SwedishGenerator(Rng rng) { record CSP(Rng rng) { public FillResult fillMask(Grid mask, DictEntry[] dictIndex, - int logEveryMs, int timeLimitMs) { + int timeLimitMs) { boolean multiThreaded = Thread.currentThread().getName().contains("pool"); var grid = mask.deepCopyGrid(); var slots = extractSlots(grid); @@ -773,7 +774,7 @@ public record SwedishGenerator(Rng rng) { Runnable renderProgress = () -> { if (!Main.VERBOSE || multiThreaded) return; var now = System.currentTimeMillis(); - if ((now - lastLog.get()) < logEveryMs) return; + if ((now - lastLog.get()) < LOG_EVERY_MS) return; lastLog.set(now); var done = assigned.size(); diff --git a/src/test/java/puzzle/MainTest.java b/src/test/java/puzzle/MainTest.java index 0d86740..5f0a3f5 100644 --- a/src/test/java/puzzle/MainTest.java +++ b/src/test/java/puzzle/MainTest.java @@ -148,8 +148,7 @@ public class MainTest { int foundSeed = -1; for (int i = 0; i < 50; i++) { int seed = opts.seed + i; - var rng = new Rng(seed); - res = Main.attempt(rng, dict, opts); + res = Main.attempt(new Rng(seed), dict, opts); if (res != null && res.filled().ok()) { foundSeed = seed; System.out.println("[DEBUG_LOG] Seed found: " + seed);