Place 3 snakes in grid. Head and the tail of the snakes are already predetermined using three different colours. The snakes goes from cell to cell vertically or horizontally, but not diagonally. Each snake does not touch itself, not even diagonally. Besides different snakes do not touch each other, not even diagonally. The numbers outside the grid indicate how many squares are used by the snakes in that row or column.
Solution code: Row 6, followed by column 8. 'S' for snake, '-' for an empty cell.