#define _CRT_SECURE_NO_WARNINGS #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define INF (1<<29) #define rep(i,n) for(int i=0;i<(int)(n);i++) #define all(v) v.begin(),v.end() #define uniq(v) v.erase(unique(all(v)),v.end()) int a[300][300]; int main() { ios::sync_with_stdio(0); cin.tie(0); int n; cin >> n; int b = n / 2; rep(i, n * n / 4) { int x = i * 4 + 1; a[i / b][i % b] = x; a[i / b + b][i % b] = x + 1; a[i / b][i % b + b] = x + 2; a[i / b + b][i % b + b] = x + 3; } rep(y,n) { rep(x, n) { if (x)cout << ' '; cout << a[y][x]; } cout << endl; } return 0; }