Halestrom.net

last modified: Saturday 31 December 2016 (UTC)
author: Hales
markup: textile

The puzzle won

A couple of weeks ago my mum found me a puzzle. A "fun" one.

It's bit like a normal jigsaw, but:

This is a hard puzzle designed to kill any connection kids have between dinosaurs and fun. It's trial and error. Lots of trial and error.

The previous owner had written instructions on the back of the tiles:

We thought these were for a solution, but as it turns out a couple of the dinosaurs do not match up.

So I spent this morning writing a small c program to solve the puzzle:

solver.c

It has a few ugly parts, like modifying the global array of pieces to rotate them as it goes, but it's not a project destined for bigger things.

The pieces of the puzzle were entered in the order the last guy thought was a solution. Any arbitrary starting point (barring bugs) should work.

Anyway, my program was solving the puzzle in an extremely small amount of steps:

1A



1A 2A



1A 2A 3A



1A 2A 3A
1B


1A 2A 3A
1B 2B


1A 2A 3A
1B 2B 3B


1A 2A 3A
1B 2B 3B
1C

1A 2A 3A
1B 2B 3B
1C 2C

1A 2A 3A
1B 2B 3B
1C 2C 3C

success

Just putting all of the pieces on the board in order? Nah, something must be wrong with my code.

I added some lines to allow me to follow what my program did, with the real tiles, step-by-step:

Piece 0 spot 0 rot 0 FITS
1A



Piece 1 spot 1 rot 0 FITS
1A 2A



Piece 2 spot 2 rot 0 FITS
1A 2A 3A



Piece 3 spot 3 rot 0 FITS
1A 2A 3A
1B


Piece 4 spot 4 rot 0 FITS
1A 2A 3A
1B 2B


Piece 5 spot 5 rot 0 FITS
1A 2A 3A
1B 2B 3B


Piece 6 spot 6 rot 0 FITS
1A 2A 3A
1B 2B 3B
1C

Piece 7 spot 7 rot 0 fails
Piece 7 spot 7 rot 1 FITS
1A 2A 3A
1B 2B 3B
1C 2C

Piece 8 spot 8 rot 0 FITS
1A 2A 3A
1B 2B 3B
1C 2C 3C

success

Hmm, it's just rotating tile number seven (bottom centre, 2C) counter-clockwise. Apart from that it's doing nothing. So if I follow these steps from the last guy's solution...

Puzzle, you have proven me an idiot. Happy new year!


No one has commented on this page yet.

Add your own comment:

Name:
Email (optional):
URL (optional):
Enter the word 'irrlicht' (antispam):
Do not enter anything into this box (antispam)

Comment (plaintext only):

If you provide an email address: it won't be made public. I'll only use it to contact you regarding your comment. No spam, mailing lists, etc.

If you provide a URL then your username will hyperlink to it.