diff options
| author | Simon Tatham <anakin@pobox.com> | 2005-09-01 11:57:56 +0000 |
|---|---|---|
| committer | Simon Tatham <anakin@pobox.com> | 2005-09-01 11:57:56 +0000 |
| commit | 94b36c11e00bb740813506b0d3911f90f1829941 (patch) | |
| tree | 07767f714efa6b617fde66876073a16eebd89ea3 /puzzles.h | |
| parent | 6992530a8514f88238fd6f8c508f54b058ee3f19 (diff) | |
| download | puzzles-94b36c11e00bb740813506b0d3911f90f1829941.zip puzzles-94b36c11e00bb740813506b0d3911f90f1829941.tar.gz puzzles-94b36c11e00bb740813506b0d3911f90f1829941.tar.bz2 puzzles-94b36c11e00bb740813506b0d3911f90f1829941.tar.xz | |
James H has implemented a new `Tricky' difficulty level in Light Up:
a non-recursive level above Easy, which therefore moves the
recursive Hard mode further up still. Play-testing suggests that in
fact Tricky is often _harder_ than the old Hard mode, since the
latter had limited depth of recursion and would therefore spot
complex deductions only if it happened to start a recursion on the
right square; Tricky may be limited in the sophistication of its
complex deductions, but it never misses one, so its puzzles tend to
be hard all over.
Also in this checkin, a new source file `nullfe.c', containing all
the annoying stub functions required to make command-line solvers
link successfully. James wrote this for (the new) lightupsolver, and
I've used it to simplify the other stand-alone solvers.
[originally from svn r6254]
Diffstat (limited to 'puzzles.h')
| -rw-r--r-- | puzzles.h | 14 |
1 files changed, 14 insertions, 0 deletions
@@ -324,6 +324,20 @@ void ps_free(psdata *ps); drawing *ps_drawing_api(psdata *ps); /* + * combi.c: provides a structure and functions for iterating over + * combinations (i.e. choosing r things out of n). + */ +typedef struct _combi_ctx { + int r, n, nleft, total; + int *a; +} combi_ctx; + +combi_ctx *new_combi(int r, int n); +void reset_combi(combi_ctx *combi); +combi_ctx *next_combi(combi_ctx *combi); /* returns NULL for end */ +void free_combi(combi_ctx *combi); + +/* * Data structure containing the function calls and data specific * to a particular game. This is enclosed in a data structure so * that a particular platform can choose, if it wishes, to compile |