巨阵
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
Special Judge, 64bit IO Format: %lld

题目描述

题面
现有一个 n *n 的方阵需要不重复地填上 ~ 这些数
现在我们定义一些四元格是“巨” 的,当且仅当该四元格大小为 2 *2 且这四个格子中的数字从其中某个位置开始顺时针递增
而你需要输出一个这样的 n *n 的方阵最多有多少个巨格,并且将其构造出来


输入描述:

一个数 n ()

输出描述:

第一行一个数表示最大巨格数

接下来 n 行输出大小为 n*n 的方阵
示例1

输入

复制
3

输出

复制
3
9 2 3
8 5 4
7 6 1

说明

解释:易得左上、左下、右上 三个四元格是巨格

备注:

本题采用 spj ,输出需要答案正确且构造合法才会被视为正确