题解 | #蛇形矩阵#
蛇形矩阵
https://www.nowcoder.com/practice/649b210ef44446e3b1cd1be6fa4cab5e
import java.util.Scanner;
class Main {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
while(sc.hasNext()){
int input1 = sc.nextInt();
getThree(input1);
}
}
public static void getThree(int a){
//先分析以下题,明显 输出的是 n 行,n列的三角形, 发线下一行元素都是上一行后一个元素减1,所以先需要把第一行输出,后面可以按照第一行减1,输出, 第一行相邻两个元素的差值是等差数列, 2、3、4、5
//先控制输第一行
int out = 0;
//控制逐渐递减 ,行加1,列减1
for(int j=0;j<a;j++){
out = out - j;
for(int i=1;i<=a;i++){
out = out + i;
if(i>j){
System.out.print(out+" ");
}
}
out = 0;
System.out.println();
}
}
}