E. 黑塔的奇物
time limit per test
1 second
memory limit per test
512 megabytes
input
standard input
output
standard output

由于最近黑塔忙着探索模拟宇宙的不可知域,空间站对新增奇物的管理非常混乱。而作为黑塔空间站的临时奇物管理员的开拓者,决定亲自安放这些奇物。

奇物收容仓

这些奇物共有 $$$n$$$ 种,分别从 $$$1$$$ 到 $$$n$$$ 编号,每种奇物都恰好有 $$$n$$$ 个,即一共有 $$$n \times n$$$ 个奇物。开拓者决定把这些奇物安置到一个专门用来收容奇物的 $$$n \times n$$$ 大小的棋盘上。

但是开拓者发现,这些奇物会与棋盘耦合并互相产生一些奇妙的影响,导致在这个棋盘中,每一行和每一列的 $$$n$$$ 个奇物都会在这一行或者这一列产生一个紊乱值,而紊乱值的大小为这 $$$n$$$ 个奇物编号的异或和$$$\dagger$$$。

如果有某一行或者某一列的紊乱值超过阈值 $$$m$$$,可能会导致这些奇物被棋盘破坏。因此,开拓者想知道如果以最优方案摆放这些奇物,阈值 $$$m$$$ 最低可以设置到多少。

开拓者想让你给出最优方案摆放方案下阈值 $$$m$$$ 的最小值,以及把这 $$$n \times n$$$ 个奇物摆放在棋盘上的具体方案。

$$$\dagger$$$ 异或和,即所有数的按位异或和。如 $$$1, 3, 4$$$ 的按位异或和是 $$$(001)_2 \oplus (011)_2 \oplus (100)_2 = (110)_2 = 6$$$

Input

一行一个正整数 $$$n$$$ ($$$1\le n \lt 500$$$, 且保证 $$$n$$$ 是奇数) 表示奇物的种类以及每种奇物的数量。

Output

第一行一个正整数 $$$m$$$ 表示最优方案下的紊乱值。

接下来输出一个 $$$n$$$ 行 $$$n$$$ 列的矩阵,表示一种最优方案。如果存在多个可行方案,输出任意一种。

Examples
Input
1
Output
1
1
Input
3
Output
0
1 2 3
2 3 1
3 1 2
Note

注意到 $$$n$$$ 是奇数。