ARC080 D - Grid Coloring

問題

HWのグリッドに色1〜Nのマスがある。各々a_i個ずつ存在し、\sum_{i=1}^{N}a_i = HWである。 同じ色同士のマスは上下左右の移動のみによって、他の色のマスを踏まずに任意のマス到達できなければならない。 そのような塗り分け方を一つ出力せよ。

解法

1行しか存在しない場合、小さい番号の色から順にマスを埋めていけば良い。 グリッドの場合においても、うなぎ上に折り返していけば1行と同等に考えることが出来る。

>------------->v
v<-------------<
>------------->v
...

こんな感じに進めば良い。 例えば、以下のような出力になる。

122333444455
777666666555
7777...