• 牛客网——蛇形数组



    活动地址:CSDN21天学习挑战赛

    学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您:
    想系统/深入学习某技术知识点…
    一个人摸索学习很难坚持,想组团高效学习…
    想写博客但无从下手,急需写作干货注入能量…
    热爱写作,愿意让自己成为更好的人…


    欢迎参与CSDN学习挑战赛,成为更好的自己,请参考活动中各位优质专栏博主的免费高质量专栏资源(这部分优质资源是活动限时免费开放喔~),按照自身的学习领域和学习进度学习并记录自己的学习过程。您可以从以下3个方面任选其一着手(不强制),或者按照自己的理解发布专栏学习作品,参考如下:

    **

    目录

    前言

    一、蛇形数组

    描述

    输入描述:

    输出描述:

     二、分析问题

    三、代码如下 

     总结


    前言

    今天给大家安排个高难度——蛇形数组。


    一、蛇形数组

    题目来源:

    蛇形矩阵_牛客题霸_牛客网

    描述

    给你一个整数n,输出n∗n的蛇形矩阵

    输入描述:

    输入一行,包含一个整数n

    输出描述:

    输出n行,每行包含n个正整数,通过空格分隔。

    1<=n<=1000

    不知道有没有伙伴和我一样,看到这东西人都傻了,有规律,但不多。


     二、分析问题

    我们不难发现,它是按照斜线,蛇形逐渐递增的,但是要找出它递增的条件还是有点难,我们先慢慢分析,我们先分析斜线,可以发现 行=列,数字大小一样,然后蛇形走位,是增减的问题了。

    附上一张大佬分析图:


    三、代码如下 

    1. #include <iostream>
    2. using namespace std;
    3. void snack(int n)
    4. {
    5. int num = 1;
    6. int k = 0;
    7. int a[n][n];
    8. while(k < n)
    9. {
    10. for(int i = 0; i <= k; ++i)
    11. {
    12. if (k % 2 == 0)
    13. {
    14. a[k-i][i] = num++;
    15. }else
    16. {
    17. a[i][k-i] = num++;
    18. }
    19. }
    20. ++k;
    21. }
    22. int flag = 1;
    23. while(k < 2*n - 1)
    24. {
    25. for(int i = n-1;i>=flag;--i)
    26. {
    27. if(k%2 == 0)
    28. {
    29. a[k-i][i] = num++;
    30. }
    31. else
    32. {
    33. a[i][k-i] = num++;
    34. }
    35. }
    36. flag++;
    37. ++k;
    38. }
    39. for(int i = 0; i < n; ++i)
    40. {
    41. for(int j = 0; j< n; ++j)
    42. {
    43. cout<<a[i][j]<<" ";
    44. }
    45. cout<<endl;
    46. }
    47. }
    48. int main()
    49. {
    50. int n;
    51. cin >>n;
    52. snack(n);
    53. return 0;
    54. }

     


     总结

    今天和大家简单学习了一下蛇形数组,比较难,大家仔细琢磨会有所帮助的,希望可以共同进步哈~

  • 相关阅读:
    powerlevel10k 颜色和图标的自定义设置
    计算机网络(TCP协议)
    使用IOPaint实现图片擦除路人
    Git - 只merge某个commit到指定的branch
    Java锁对象
    Android 得到安装包的信息
    华为云云耀云服务器L实例评测|云耀云服务器L实例搭建个人镜像站
    echart3D地图
    vue3学习-1配置以及启动
    [闲聊篇] 一年来的经历闲叙
  • 原文地址:https://blog.csdn.net/m0_72503424/article/details/126414587