0
点赞
收藏
分享

微信扫一扫

HJ35 蛇形矩阵 C++解法

Ichjns 2022-03-11 阅读 52

蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。
例如,当输入5时,应该输出的三角形为:
1 3 6 10 15
2 5 9 14
4 8 13
7 12
11

请注意本题含有多组样例输入。

输入描述:

输入正整数N(N不大于100)
输出描述:

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

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n;
    while(cin>>n){
        vector<vector<int>>data(n,vector<int>(n,0));
        int num=1;//设定要赋值的数
        for(int t=0;t<n;t++){//蛇形趟数/
            int i=t,j=0;//坐标i,j
            while(i>=0){ //小于0说明到顶了,将进行下一趟蛇形
                data[i][j]=num;
                num++;
                i--;
                j++;//往右上方移动
            }
            //完成一趟蛇形后,t加1,i=t,开始新的一趟
        }
      
      //全部赋值完毕后,开始打印输出
        for(int i=0;i<n;i++){
            for(int j=0;j<n-i;j++){
                cout<<data[i][j]<<" ";
            }
            cout<<endl;
        }
    }
    return 0;
}
举报

相关推荐

c++ 蛇形矩阵

蛇形矩阵c语言

C语言蛇形矩阵

蛇形矩阵

蛇形矩阵;

0 条评论