<feed xmlns='http://www.w3.org/2005/Atom'>
<title>puzzles/unfinished/divvy.c, branch master</title>
<subtitle>My sgt-puzzles tree</subtitle>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/puzzles/'/>
<entry>
<title>Substantial reworking of Solo so that it implements both Sudoku-X</title>
<updated>2008-04-07T15:56:42+00:00</updated>
<author>
<name>Simon Tatham</name>
<email>anakin@pobox.com</email>
</author>
<published>2008-04-07T15:56:42+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/puzzles/commit/?id=93103eeca4e41ecaa874069b10f2a3de8c392435'/>
<id>93103eeca4e41ecaa874069b10f2a3de8c392435</id>
<content type='text'>
(require both main diagonals to have one of every digit in addition
to all the usual constraints) and Jigsaw Sudoku (replace the array
of rectangular sub-blocks with the sub-blocks being random
polyominoes). To implement the latter, I've moved my `divvy.c'
library routine out of the `unfinished' subdirectory.

Jigsaw mode is currently an undocumented feature: you enable it by
setting the rows parameter to 1 (and the columns parameter to your
desired grid size, which unlike normal Sudoku can be anything you
like including a prime number). The reason it's undocumented is
because generation times are not yet reliably short: sometimes
generating a jigsaw-type puzzle can hang for hours and still get
nowhere. (The algorithm should terminate in principle, but not in
any time you're prepared to wait.) I _think_ I know how to solve
this, but have yet to try it. Until then, jigsaw mode will remain a
hidden feature.

Printing of X-type puzzles is also substandard at present, because
the current print-colour API replaces the desired light shading of
the X-cells with heavy diagonal hatching. I plan to adjust the API
imminently to address this.

[originally from svn r7974]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(require both main diagonals to have one of every digit in addition
to all the usual constraints) and Jigsaw Sudoku (replace the array
of rectangular sub-blocks with the sub-blocks being random
polyominoes). To implement the latter, I've moved my `divvy.c'
library routine out of the `unfinished' subdirectory.

Jigsaw mode is currently an undocumented feature: you enable it by
setting the rows parameter to 1 (and the columns parameter to your
desired grid size, which unlike normal Sudoku can be anything you
like including a prime number). The reason it's undocumented is
because generation times are not yet reliably short: sometimes
generating a jigsaw-type puzzle can hang for hours and still get
nowhere. (The algorithm should terminate in principle, but not in
any time you're prepared to wait.) I _think_ I know how to solve
this, but have yet to try it. Until then, jigsaw mode will remain a
hidden feature.

Printing of X-type puzzles is also substandard at present, because
the current print-colour API replaces the desired light shading of
the X-cells with heavy diagonal hatching. I plan to adjust the API
imminently to address this.

[originally from svn r7974]
</pre>
</div>
</content>
</entry>
<entry>
<title>A rigorous proof. Totally unimportant to the code, but I didn't want</title>
<updated>2007-08-25T17:46:13+00:00</updated>
<author>
<name>Simon Tatham</name>
<email>anakin@pobox.com</email>
</author>
<published>2007-08-25T17:46:13+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/puzzles/commit/?id=a603318eec298f1093139117fdc46097c745c293'/>
<id>a603318eec298f1093139117fdc46097c745c293</id>
<content type='text'>
to lose it :-)

[originally from svn r7703]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
to lose it :-)

[originally from svn r7703]
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix an inaccurate comment.</title>
<updated>2007-08-25T15:50:33+00:00</updated>
<author>
<name>Simon Tatham</name>
<email>anakin@pobox.com</email>
</author>
<published>2007-08-25T15:50:33+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/puzzles/commit/?id=f228c5ef004dc901c984133a34819794e90d66a1'/>
<id>f228c5ef004dc901c984133a34819794e90d66a1</id>
<content type='text'>
[originally from svn r7702]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[originally from svn r7702]
</pre>
</div>
</content>
</entry>
<entry>
<title>I've just realised that my deliberate avoidance of non-simply</title>
<updated>2007-08-25T15:32:41+00:00</updated>
<author>
<name>Simon Tatham</name>
<email>anakin@pobox.com</email>
</author>
<published>2007-08-25T15:32:41+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/puzzles/commit/?id=cb0901306de9b1698323823f0180f98c6bac7789'/>
<id>cb0901306de9b1698323823f0180f98c6bac7789</id>
<content type='text'>
connected polyominoes actually causes a loss of generality for
sufficiently large k. I hadn't previously noticed, because you need
k to be (I think) at least 23 and none of my potential applications
require anything nearly that large. Add some discussion of this.

[originally from svn r7701]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
connected polyominoes actually causes a loss of generality for
sufficiently large k. I hadn't previously noticed, because you need
k to be (I think) at least 23 and none of my potential applications
require anything nearly that large. Add some discussion of this.

[originally from svn r7701]
</pre>
</div>
</content>
</entry>
<entry>
<title>Ahem. Finishing writing the comment _before_ checkin is generally sensible.</title>
<updated>2007-08-18T13:32:56+00:00</updated>
<author>
<name>Simon Tatham</name>
<email>anakin@pobox.com</email>
</author>
<published>2007-08-18T13:32:56+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/puzzles/commit/?id=4ff90bd47f4bd3b11c4fb8b1ea25afb7b95f76da'/>
<id>4ff90bd47f4bd3b11c4fb8b1ea25afb7b95f76da</id>
<content type='text'>
[originally from svn r7694]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[originally from svn r7694]
</pre>
</div>
</content>
</entry>
<entry>
<title>Allow a 1-omino to be completely destroyed and recreated in an</title>
<updated>2007-08-18T13:30:13+00:00</updated>
<author>
<name>Simon Tatham</name>
<email>anakin@pobox.com</email>
</author>
<published>2007-08-18T13:30:13+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/puzzles/commit/?id=4c1e3ca7cbefda5d25b26c83c9767c81682f5478'/>
<id>4c1e3ca7cbefda5d25b26c83c9767c81682f5478</id>
<content type='text'>
arbitrary unclaimed square. This cures the most common cause of
generation failures (covering a large area in dominoes was the most
difficult case, and would fail even if the large area was 1xn!); the
failure rate is now sufficiently low under all circumstances I've
found that I'm willing to just loop until I get a success.

[originally from svn r7693]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
arbitrary unclaimed square. This cures the most common cause of
generation failures (covering a large area in dominoes was the most
difficult case, and would fail even if the large area was 1xn!); the
failure rate is now sufficiently low under all circumstances I've
found that I'm willing to just loop until I get a success.

[originally from svn r7693]
</pre>
</div>
</content>
</entry>
<entry>
<title>Better test-mode diagnostics.</title>
<updated>2007-08-18T11:19:29+00:00</updated>
<author>
<name>Simon Tatham</name>
<email>anakin@pobox.com</email>
</author>
<published>2007-08-18T11:19:29+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/puzzles/commit/?id=333d57bf6ec7def6fa78215a71a2d05476167fc1'/>
<id>333d57bf6ec7def6fa78215a71a2d05476167fc1</id>
<content type='text'>
[originally from svn r7691]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[originally from svn r7691]
</pre>
</div>
</content>
</entry>
<entry>
<title>A piece of library code which constructs a random division of a</title>
<updated>2007-08-18T10:07:29+00:00</updated>
<author>
<name>Simon Tatham</name>
<email>anakin@pobox.com</email>
</author>
<published>2007-08-18T10:07:29+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/puzzles/commit/?id=cc54c09413a08ea150fd8cc6706ed61ccc8ce47e'/>
<id>cc54c09413a08ea150fd8cc6706ed61ccc8ce47e</id>
<content type='text'>
rectangle into equally sized ominoes. I have a couple of potential
applications for this, but none I've actually implemented yet, so
for the moment it's living in `unfinished'.

[originally from svn r7690]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
rectangle into equally sized ominoes. I have a couple of potential
applications for this, but none I've actually implemented yet, so
for the moment it's living in `unfinished'.

[originally from svn r7690]
</pre>
</div>
</content>
</entry>
</feed>
