#include <bits/stdc++.h>
using i64 = long long;

int main() {
    int k;
    std::cin >> k;
    if (k == 1) {
        printf("1\n1\n");
        return 0;
    }
    int n = (k + 3) / 4;
    n *= 2;
    int a = 2 * n - k;
    printf("%d\n", n);
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < n; j++) {
            int k = (i + j) % n;
            printf("%d ", (i % 2 && k >= a) * (n - a) + k + 1);
        }
        printf("\n");
    }

    return 0;
}