题解 | #蛇形矩阵#

蛇形矩阵

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

行列都是一个等差数列,都可以找规律


import java.util.*;
import java.util.concurrent.ConcurrentHashMap;

public class Main{
    public static void main(String[] args) {
        /*
                第一行是一个等差数列,差值是 2, 3 , 4
                               第二行差值是 3 ,4 ,5.。。
                只要计算第一列即可,第一列也是一个等差数列,差值为:1,2,3,。。
         */
        Scanner sc = new Scanner(System.in);
        while(sc.hasNext()){
            int number =sc.nextInt();
            int head = 1;// 第一行的第一个元素
            int row = 2;// 第一行的是2
            int col = 1;// 列的第一个差值是1;
            int currentHead = 0;
            // 循环4次
            for(int i = number; i >=  1; i--){
                row = number - i + 2;
                currentHead = head;
                // 逐行输出
                for(int j = i; j >= 1;j--){
                    if(j == i)
                    System.out.print(head+" ");
                    else {
                        head += row;
                        System.out.print(head+" ");
                        row++;
                    }
                }
                System.out.println();
                head = currentHead + col;
                col++;
            }
        }
    }
    }


全部评论

相关推荐

spiritecs:没实习非985211硕很难很难,只能说祝早日成功
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务