重要的是:

1.横纵向数字间的间隔很好发现;

2.给每行,一个值不断的增加,+2,+3,+4....

3.但是要给定每行最开始的值--这个值要由最开始的1开始递增

import java.util.*;

public class Main{
    public static void main(String[] args){
        Scanner scan=new Scanner(System.in);
        int n=scan.nextInt();
        int row=1;
        for(int i=1;i<=n;i++){
            row+=(i-1);
            System.out.print(row+" ");
            int col=row;
            for(int j=i+1;j<=n;j++){
               col+=j;
                System.out.print(col+" ");
            }
            System.out.println("");
        }
    }
}