有一个 的网格。初始时,所有格子都是完好的。
恰好破坏其中 个格子。然后在剩余的 个格子中,将整数 各写入恰好一次。
设整数 满足 。只保留写有满足 的整数 的格子。如果这些格子组成一个连通分量,则称区间 为 。两个格子仅在共享一条边时相邻。
希望所有区间 都不是好区间。求需要破坏的格子数 的最小值,并构造一种达到该最小值的网格。
如果完好的格子至多有 个,则不存在满足 的区间,因此条件自动成立。
输入格式如下。
第一行输出需要破坏的格子数的最小值 。
接下来输出 行,每行输出 个整数 ,表示网格构造。
如果有多个最优构造,输出任意一个即可。