import java.util.ArrayList; import java.util.List; import java.util.Scanner; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); // 注意 hasNext 和 hasNextLine 的区别 while (in.hasNextInt()) { // 注意 while 处理多个 case int i = in.nextInt(); int max = 0; for (int x = 1; x <= i; x ++) { max += x; } List<List<String>> list = new ArrayList<>(); outer: for (int x = 1; x <= max;) { int n = list.size() + 1; for (int m = 1; m <= n; m ++) { if (m == 1) { List<String> yList = new ArrayList<>(); yList.add(x + ""); list.add(yList); x ++; } else { list.get(n - m).add(x + ""); x ++; } } } for (List<String> yList : list) { System.out.println(String.join(" ", yList.toArray(new String[yList.size()]))); } } } }