题解 | #蛇形矩阵#

蛇形矩阵

https://www.nowcoder.com/practice/f228a074c5274619b26be544962375e1


#include <iostream>
using namespace std;

int main() {
    
    int A[1000][1000];
    int n;
    cin >> n;
    int x = 0; int y = 0;
    int T = 1;
    int val = 1;
    for (int i=0;i<=n-1;i++)
    {
        if (T == 1)
        {
            for (x = i; x >= 0; x--)
            {
                A[x][i - x] = val;
                val++;
            }
            T = 0;
        }
        else
        {
            for (y = i; y >= 0; y--)
            {
                A[i - y][y] = val;
                val++;
            }
            T = 1;
        }
    }
    int h = 0;
    int m = 0;
    for (int i = n; i<=2*(n-1); i++)
    {
        if (T == 1)
        {
            for (x = n-1; x > h; x--)
            {
                A[x][i - x] = val;
                val++;
            }
           
            T = 0;
        }
        else
        {
            for (y = n-1; y > m; y--)
            {
                A[i - y][y] = val;
                val++;
            }
           
            T = 1;
        }
        h++;
        m++;
    }
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < n; j++)
        {
            cout << A[i][j] << " ";
        }
        cout << endl;
    }
    system("pause");
    return 0;
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

码农索隆:这种hr,建议全中国推广
点赞 评论 收藏
分享
白火同学:能。我当初应届沟通了1200,收简历50,面试10左右吧,加油投吧
投了多少份简历才上岸
点赞 评论 收藏
分享
06-04 09:27
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务