introduce bitloops

This commit is contained in:
mike
2026-01-14 09:14:03 +01:00
parent bd52bd0ef0
commit afd4a7f53c
4 changed files with 45 additions and 45 deletions

View File

@@ -59,10 +59,10 @@ public class MainTest {
var s = slots[0];
assertEquals(8, s.length());
var cells = s.walk().toArray();
assertEquals(0, Grid.r(cells[0]));
assertEquals(1, Grid.c(cells[0]));
assertEquals(0, Grid.r(cells[1]));
assertEquals(2, Grid.c(cells[1]));
assertEquals(0, SwedishGenerator.IT[cells[0]].r());
assertEquals(1, SwedishGenerator.IT[cells[0]].c());
assertEquals(0, SwedishGenerator.IT[cells[1]].r());
assertEquals(2, SwedishGenerator.IT[cells[1]].c());
}
@Test
@@ -82,8 +82,8 @@ public class MainTest {
clues.forEachSlot((key, lo, hi) -> {
count.incrementAndGet();
assertEquals(8, Long.bitCount(lo) + Long.bitCount(hi));
assertEquals(0, Grid.r(Long.numberOfTrailingZeros(lo)));
assertEquals(1, Grid.c(Long.numberOfTrailingZeros(lo)));
assertEquals(0, SwedishGenerator.IT[Long.numberOfTrailingZeros(lo)].r());
assertEquals(1, SwedishGenerator.IT[Long.numberOfTrailingZeros(lo)].c());
});
assertEquals(1, count.get());
}