Use LUT for group indexes instead of calculating on-the-fly

This commit is contained in:
2022-11-26 14:27:12 +00:00
parent 09a9f95740
commit 40c12c3458
7 changed files with 225 additions and 128 deletions

View File

@@ -24,10 +24,7 @@ CFLAGS += -static
LDFLAGS += -lpthread
# For profiling
# CFLAGS += -pg
SRC = main.c sud.c solve.c
SRC = main.c sud.c solve.c lut.c
OBJ = $(SRC:.c=.o)
default: sudoku eval
@@ -35,16 +32,16 @@ default: sudoku eval
sudoku: $(OBJ)
$(CC) $(CFLAGS) $(LDFLAGS) $(OBJ) -o $@
eval: eval.o
$(CC) $(CFLAGS) $(LDFLAGS) eval.o -o $@
clean:
rm -f sudoku *.o
rm -f sudoku eval genlut *.o lut.c
lut.c: genlut
./genlut > $@
eval.o: ds.h
main.o: sud.h solve.h ds.h
sud.o: sud.h
solve.o: solve.h
sud.o: sud.h lut.h
solve.o: solve.h lut.h
puzzles: sudoku.csv
pv sudoku.csv | tail -n+2 | cut -d, -f1 | tr -d '\n' > $@