## Introduction

Fillomino is yet another game from Nicoli. Finished fillomino puzzles consist of a two dimensional grid completely filled with polyominoes formed from cells which each contain a number matching the size of the enclosing polyomino. In our version all polyominoes of a given size have a specific colour.

At the start of a game much of the grid will be empty except for at least one given (ie cell containing a number) for each polyomino. The objective is to work out how to assign numbers to cells so that each cell finishes in a polyomino of the size of the number it is assigned. Obviously if polyominoes of the same size touched orthogonally they would be the wrong size!

We find that our puzzles are readily solved. That may be because of the restriction (explained below) we have imposed on the puzzles we have generated.

The Wikipedia definition of Fillomino
includes the following:
"Unlike some of its contemporaries among puzzles, there need not be a one-to-one correspondence between givens and polyominoes in the solution; it is possible for two givens with matching number to belong to the same polyomino in the solution, *and for a polyomino to have no given at all.*" (Our italics).

**We require that all puzzles in the Pzl collection of games have unique solutions,** but the italicised section of the Wikipedia Fillomino definition leaves open the possibility of multiple solutions, and indeed, Fillomino puzzles we have seen on other websites do not have unique solutions. Therefore the puzzles built into pzl Fillomino are slightly more strictly defined than is allowed by this defintion: **in our Fillomino puzzles all polyominoes have at least 1 given**. As a result of this, as far as we are aware, we have been able to generate puzzles which have unique solutions and which can be solved by logical deduction and do not require guessing. Those who want puzzles that necessitate trial and error methods for their solution should look elsewhere.

The easiest way to learn about the game is from the Worked example video. Read the caption then watch the video. It illustrates many of the games features and you won't need to read the rest of this page. Better: download the game and play it.

The game includes 1000 built-in puzzles: 400 size 5x5, 300 6x6, 200 7x7 and 100 8x8. They are roughly sorted in order of their difficulty.

Fillomino, unlike many of our other games is unable to provide the "reasons" for hints.

## Fillomino Worked Example

A video from fillomino. The puzzle is selected by entering its number into the box and typing "Enter". The 6s in the bottom right hand corner are obvious and the player fills in the cells by right clicking on the corresponding candidate values (left click deletes a candidate, middle button restores). Filling in the 7 encloses the 5s, so they become clear. The 7 is easy, but she is lucky with the 2. More 7s and 6s, interrupted by a quick click on the thumb to check for errors, but then under the strain of performing for the camera confidence is lost, errors occur, and she checks for mistakes using the thumb button. It shows an error by the thumb turning down and the incorrect cell is coloured red. Another click on the thumb and the error is corrected. A bit more progress and then a resort to the hint button which clears many candidates using algorithm 0. Another error and finally the clock flashes to signify the games has been finished correctly.

## Algorithms

The solving algorithms used by pzl Fillomino are explained below using examples. In each case the candidates coloured in red can be deleted. These algorithms are sufficient to solve all the puzzles built into the game. Additional methods will be apparent when solving the puzzles by hand but we have written the ones which seemed easiest to express as computer code and which are simple enough for players to apply themselves. We give one example of each except algorithm 4 which tries various ways to extend polyominoes into single "holes", a hole being a set of connected unfilled cells.

## Algorithm 1

Delete candidates which would permit the creation of oversize polyominoes. Here the two polyominoes of size 7 cannot be joined without becoming too large.

## Algorithm 0

Each unfinished cell need only contain candidates for the unsolved polyominoes that the surround the hole it is part of. Here the polyomino of size 2 at the edge of the hole has just been completed, and as there are no other 2s at the edge of the hole, all candidate 2s can be deleted.

## Algorithm 2

When a polyomino is completed none of the hole cells it touches can be part of a polyomino of the same size, so the corresponding candidates can be deleted. Here the polyomino of size 5 has just been completed.

## Algorithm 3

If the total size of the holes touching a polyomino exactly matches the number of cells it needs for completion, they must be part of the polyomino. Here the hole size exaclty matches the number of cells required to complete the polyomino of size 7.

## Algorithm 4 1

If a polyomino only touches a single hole and can only reach it via a single cell, that cell must be part of the polyomino. Here the polyomino of size 4 can only extend leftwards.

## Algorithm 4 2

A polyomino only touches a single hole, but in multiple directions, and requires more than 1 additional cell for completion. If adding a cell from one of these possible directions will complete the polyomino and is the only such possibility, it is the solution. Here the polyomino of size 4 must include the marked cell.