update them

This commit is contained in:
mike
2025-12-22 01:03:18 +01:00
parent 83d1a907c1
commit f9f0f31d12
56 changed files with 37953 additions and 37322 deletions

View File

@@ -5,6 +5,7 @@ import java.nio.file.Files;
import java.nio.file.Paths;
import java.time.LocalDate;
import java.util.Date;
import java.util.Locale;
public class Main {
// ---------------- CLI ----------------
@@ -13,21 +14,23 @@ public class Main {
public int seed = 1;
public int pop = 18;
public int gens = 100;
public int tries = 50;
public int tries = 5;
public String wordsPath = "./out/pool.txt";
public double minSimplicity = 0; // 0 means no limit
}
static void usage() {
System.out.println("""
Usage:
java SwedishGenerator [--seed N] [--pop N] [--gens N] [--tries N] [--words word-list.txt]
java SwedishGenerator [--seed N] [--pop N] [--gens N] [--tries N] [--words word-list.txt] [--min-simplicity N.N]
Defaults:
--seed 1
--pop 18
--gens 100
--tries 50
--words ./word-list.txt
--words ./out/pool.txt
--min-simplicity 0 (no limit)
""");
}
@@ -45,6 +48,7 @@ public class Main {
else if (a.equals("--gens")) { out.gens = Integer.parseInt(v); i++; }
else if (a.equals("--tries")) { out.tries = Integer.parseInt(v); i++; }
else if (a.equals("--words")) { out.wordsPath = v; i++; }
else if (a.equals("--min-simplicity")) { out.minSimplicity = Double.parseDouble(v); i++; }
else throw new IllegalArgumentException("Unknown arg: " + a);
}
return out;
@@ -66,11 +70,13 @@ public class Main {
System.out.println("\n=== FILLED PUZZLE (HUMAN) ===");
System.out.println(SwedishGenerator.renderHuman(res.filled().grid));
System.out.printf(Locale.ROOT, "Puzzle Simplicity: %.2f%n", res.filled().simplicity);
var out = ExportFormat.exportFormatFromFilled(res, 1, new ExportFormat.Rewards(50, 2, 1));
System.out.println("gridv2:");
for (String row : out.gridv2()) System.out.println(row);
System.out.println("words: " + out.words().size());
for (var w : out.words()) {
var simplicityOfWord =
System.out.printf("%s %s start=(%d,%d) arrow=(%d,%d)%n",
w.word(), w.direction(), w.startRow(), w.startCol(), w.arrowRow(), w.arrowCol());
}