From: Simon Tatham Date: Mon, 19 Feb 2007 19:38:00 +0000 (+0000) Subject: Forgot to shuffle the num[] array! That was probably introducing X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=commitdiff_plain;h=aa6fb7507252dec76e2c30ebfdc76b0e366851d7;hp=d68ba4b21e11928fc256caca6d8836ac986848ad;p=sgt-puzzles.git Forgot to shuffle the num[] array! That was probably introducing some really subtle probabilistic bias in the generated latin squares. [originally from svn r7302] --- diff --git a/latin.c b/latin.c index 22488a7..2d6ae74 100644 --- a/latin.c +++ b/latin.c @@ -1092,6 +1092,7 @@ digit *latin_generate(int o, random_state *rs) for (j = 0; j < o; j++) col[j] = num[j] = j; shuffle(col, j, sizeof(*col), rs); + shuffle(num, j, sizeof(*num), rs); /* We need the num permutation in both forward and inverse forms. */ for (j = 0; j < o; j++) numinv[num[j]] = j;