描述 | |
---|---|
知识点 | 数组 |
运行时间限制 | 10M |
内存限制 | 128 |
输入 |
输入正整数N(N不大于100)
|
输出 |
输出一个N行的蛇形矩阵。
|
样例输入 | 4 |
样例输出 |
1 3 6 10 2 5 9 4 8 7 |
/*根据蛇形矩阵的特点,输入的数等于行数,每行的数字之间的差值是递增的
* 比如:1 3 6 10 15 它们之间的差值是2 3 4 5
* 所以只要找到每行第一个数的规律,它后面的数就好求了
* */
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
sc.close();
int temp;
if (num >= 1 && num <= 100) {
for (int i = 1; i <= num; i++) {
temp = (i * i - i + 2) / 2; //求出每行第一个数
for (int j = i + 1; j <= num + 1; j++) {
System.out.print(temp); //打印每行第一个数
if (j != num + 1) //控制打印每行数字间的空格
System.out.print(" ");
temp += j; //求出下个数
}
System.out.println();
}
}
}
}