/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone {
printPattern(3);
System.
out.
println("--------------"); printPattern(4);
System.
out.
println("--------------"); printPattern(5);
System.
out.
println("--------------"); printPattern(6);
System.
out.
println("--------------"); }
public static void printPattern(int i) {
int num = i * i;
int n = 1;
int[][] matrixArray = new int[i][i];
for (int g = 0; g < i; g++) {
for (int j = 0; j < i && n <= num; j++, n++) {
if (g % 2 == 1) {
matrixArray[i - (g + 1) / 2][j] = n;
} else {
matrixArray[g / 2][j] = n;
}
}
}
for (int g = 0; g < i; g++) {
for (int j = 0; j < i; j++) {
System.
out.
print(matrixArray
[g
][j
] + " "); }
}
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lIHsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBqYXZhLmxhbmcuRXhjZXB0aW9uIHsKCQlwcmludFBhdHRlcm4oMyk7CgkJU3lzdGVtLm91dC5wcmludGxuKCItLS0tLS0tLS0tLS0tLSIpOwoJCXByaW50UGF0dGVybig0KTsKCQlTeXN0ZW0ub3V0LnByaW50bG4oIi0tLS0tLS0tLS0tLS0tIik7CgkJcHJpbnRQYXR0ZXJuKDUpOwoJCVN5c3RlbS5vdXQucHJpbnRsbigiLS0tLS0tLS0tLS0tLS0iKTsKCQlwcmludFBhdHRlcm4oNik7CgkJU3lzdGVtLm91dC5wcmludGxuKCItLS0tLS0tLS0tLS0tLSIpOwoJfQoJcHVibGljIHN0YXRpYyB2b2lkIHByaW50UGF0dGVybihpbnQgaSkgewoJCWludCBudW0gPSBpICogaTsKCQlpbnQgbiA9IDE7CgkJaW50W11bXSBtYXRyaXhBcnJheSA9IG5ldyBpbnRbaV1baV07CgoJCWZvciAoaW50IGcgPSAwOyBnIDwgaTsgZysrKSB7CgkJCWZvciAoaW50IGogPSAwOyBqIDwgaSAmJiBuIDw9IG51bTsgaisrLCBuKyspIHsKCQkJCWlmIChnICUgMiA9PSAxKSB7CgkJCQkJbWF0cml4QXJyYXlbaSAtIChnICsgMSkgLyAyXVtqXSA9IG47CgkJCQl9IGVsc2UgewoJCQkJCW1hdHJpeEFycmF5W2cgLyAyXVtqXSA9IG47CgkJCQl9CgkJCX0KCQl9CgoJCWZvciAoaW50IGcgPSAwOyBnIDwgaTsgZysrKSB7CgkJCWZvciAoaW50IGogPSAwOyBqIDwgaTsgaisrKSB7CgkJCQlTeXN0ZW0ub3V0LnByaW50KG1hdHJpeEFycmF5W2ddW2pdICsgIiAiKTsKCQkJfQoJCQlTeXN0ZW0ub3V0LnByaW50bG4oKTsKCQl9Cgl9Cgp9