No.459

パックは行に関係なく各列にいくつ配置するかどうかだけ分かればいい.

パックは でソートしておく.

フィールドの列を順に見ていき, その列のブロックの数を数える.

そしてその列に関係のあるパックについて, なるべく均等に分配する. ただし, その列のブロック数がその列に関係のあるパック数より少ない場合はまだパックにブロックが割り当たってないパックを優先する.