华为OD机试真题B卷 Java 实现【蛇形矩阵】,附详细解题思路-LMLPHP

一、题目描述

蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。

例如,当输入5时,应该输出的三角形为:

1 3 6 10 15

2 5 9 14

4 8 13

7 12

11

二、输入描述

输入正整数N(N不大于100)。

三、输出描述

输出一个N行的蛇形矩阵。

四、解题思路

  1. 从输入中读取一个正整数N;
  2. 使用两层循环生成蛇形矩阵。外层循环控制行数,内层循环控制每行的数字个数;
  3. 在内层循环中,计算每个位置上的数字。使用公式(i+j)*(i+j+1)/2-(i-1)计算当前位置上的数字,并输出;
  4. 在内层循环结束后,换行输出;
  5. 外层循环结束后,完成蛇形矩阵的输出。

五、Java算法源码

public static void main(String[] args){
    Scanner sc = new Scanner(System.in);
    while(sc.hasNext()){
        int n = sc.nextInt();
        for(int i = 1; i<= n; i++){
            for(int j=0; j<=n-i; j++){
                System.out.print((i+j)*(i+j+1)/2-(i-1));
                System.out.print(" ");
            }
            System.out.println();
        }
    }
}

六、效果展示

华为OD机试真题B卷 Java 实现【蛇形矩阵】,附详细解题思路-LMLPHP


🏆下一篇:华为OD机试真题 Java 实现【跳房子II】【2023 B卷 100分】,附详细解题思路

🏆本文收录于,华为OD机试(JAVA)(2022&2023)

本专栏包含了最新最全的2023年华为OD机试真题,有详细的分析和Java解答。已帮助1000+同学顺利通过OD机考。专栏会持续更新,每天在线答疑。

华为OD机试真题B卷 Java 实现【蛇形矩阵】,附详细解题思路-LMLPHP

06-06 14:25