chiark / gitweb /
Prune by symmetry: constrain 1st adj row to all 1s at low end.
[matchsticks-search.git] / main.c
diff --git a/main.c b/main.c
index 83728fa7a4aee7cb0168bbdc96d2bd689483669d..6f0df725949c9b26fccb613768f74c283bc9e591 100644 (file)
--- a/main.c
+++ b/main.c
@@ -329,6 +329,8 @@ static void iterate_recurse(int i, AdjWord min) {
        adjmatrix[i]++) {
     if (count_set_adj_bits(adjmatrix[i]) > maxhamweight)
       goto again;
+    if (i == 0 && (adjmatrix[i] & (1+adjmatrix[i])))
+      goto again;
 
     iterate_recurse(i+1, adjmatrix[i]);