题解 | #蛇形矩阵#

蛇形矩阵

https://www.nowcoder.com/practice/649b210ef44446e3b1cd1be6fa4cab5e

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNextInt()) {
            int n = in.nextInt();    //读入正整数n
            Integer[][] arr = new Integer[n][n];
            arr[0][0] = 1;
            //先填充第一列
            int yStep = 1;
            for(int i=1;i<n;i++){
                arr[i][0] = arr[i-1][0] + yStep;
                yStep++; 
            }
            //再按行填充
            int xStep = 2;
            for(int i=0;i<n;i++){
                int xStepTemp = xStep;
                for(int j=1;j<n-i;j++){
                    arr[i][j] = arr[i][j-1] + xStepTemp;
                    xStepTemp++;
                }
                xStep++;
            }

            for(int i=0; i<n; i++){
                for(int j=0; j<n; j++){
                    if(arr[i][j] != null){
                        System.out.print(arr[i][j]);
                        System.out.print(" ");
                    }
                }
                System.out.println();
            }
        }
    }
}

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务