杂题——1097: 蛇行矩阵

题目描述

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

输入格式

本题有多组数据,每组数据由一个正整数N组成。(N不大于100)

输出格式

对于每一组数据,输出一个N行的蛇形矩阵。两组输出之间不要额外的空行。矩阵三角中同一行的数字用一个空格分开。行尾不要多余的空格。

样例输入

5

样例输出

1 3 6 10 15

2 5 9 14

4 8 13

7 12

11
分析:

  • 找到蛇形矩阵移动的规律
java 复制代码
package no1_1;
import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n=scanner.nextInt();
        int[][] array=new int[n][n];
        int count=1;
        for(int k=0;k<n;k++) {//蛇形的第k层
        	for(int i=k,j=0;i>=0 && j<=k;i--,j++) {//填满该层
    			array[i][j]=count++;
        	}
        }
        for(int i=0;i<n;i++) {
        	for(int j=0;j<n;j++) {
        		if(array[i][j]!=0) {//蛇形矩阵为正整数
            		System.out.print(array[i][j]+" ");        			
        		}
        	}
        	System.out.println();
        }
    }
}
相关推荐
2301_764441338 小时前
Python构建输入法应用
开发语言·python·算法
AI科技星8 小时前
为什么变化的电磁场才产生引力场?—— 统一场论揭示的时空动力学本质
数据结构·人工智能·经验分享·算法·计算机视觉
TheLegendMe9 小时前
贪心+线程安全单例
算法·哈希算法
豐儀麟阁贵9 小时前
8.5在方法中抛出异常
java·开发语言·前端·算法
胖咕噜的稞达鸭10 小时前
算法入门:滑动窗口--->找到字符串中所有的字母异位词,串联所有的子串,最小覆盖子串
数据库·redis·算法
小青龙emmm10 小时前
2025级C语言第二次周测(国教专用)题解
c语言·开发语言·算法
WolfGang00732110 小时前
代码随想录算法训练营Day28 | 509.斐波那契数列、70.爬楼梯、746.使用最小花费爬楼梯
算法
Boop_wu10 小时前
[Java EE] 多线程进阶(JUC)(2)
java·jvm·算法
闻缺陷则喜何志丹11 小时前
【SOSDP模板 容斥原理 逆向思考】3757. 有效子序列的数量|分数未知
c++·算法·力扣·容斥原理·sosdp·逆向思考
CoovallyAIHub11 小时前
如何在手机上轻松识别多种鸟类?我们发现了更简单的秘密……
深度学习·算法·计算机视觉