螺旋矩阵

输入两个整数n和m,输出一个n行m列的矩阵,将数字 1 到 n*m 按照回字蛇形填充至矩阵中。

具体矩阵形式可参考样例。

输入格式

输入共一行,包含两个整数n和m。

输出格式

输出满足要求的矩阵。

矩阵占n行,每行包含m个空格隔开的整数。

数据范围

1≤n,m≤100

输入样例:

3 3

输出样例:

1 2 3
8 9 4
7 6 5

定义四个方向向右 x不变 y+1向下 x+1 y不变向左 x不变 y-1向上 x-1 y不变

撞墙的条件 1 走出边界      2 走到已经被占用的格子d=(d+1) mod 4

#include <iostream>
#include <algorithm>using namespace std;const int N = 110;int n, m;
int res[N][N];
bool st[N][N];int main()
{cin >> n >> m;int dx[] = {0, 1, 0, -1}, dy[] = {1, 0, -1, 0};int x = 0, y = 0, d = 0;for (int i = 1; i <= n * m; i ++ ){int nx = x + dx[d], ny = y + dy[d];if (nx < 0 || nx >= n || ny < 0 || ny >= m || st[nx][ny]){d = (d + 1) % 4;nx = x + dx[d], ny = y + dy[d];}res[x][y] = i;st[x][y] = true;x = nx, y = ny;}for (int i = 0; i < n; i ++ ){for (int j = 0; j < m; j ++ ) cout << res[i][j] << ' ';cout << endl;}return 0;
}

转载于:https://www.cnblogs.com/kelly1895/p/10816101.html

美团笔试1--螺旋矩阵相关推荐

  1. java 外螺旋矩阵_螺旋矩阵的java实现

    今天参加了腾讯实习生的在线笔试,螺旋矩阵的问题,算是ACM的入门题吧 想到了有两种实现递归和非递归 输入:3 输出: 1  2  3 8  9  4 7  6  5 输入:5 输出: 1  2  3 ...

  2. 【面试题】网易互娱(游戏)2021校园招聘在线笔试 - 服务端开发工程师[螺旋矩阵]

    昨晚做网易互娱的笔试,比较尴尬的是只能用C/C++/Java,而本人对C/C++的了解仅限于大一的课程设计(而且一年多没用过C写代码了),Java差不多看得懂代码但是没有系统的学过.无奈最后只能用py ...

  3. 螺旋矩阵c++语言_一起刷 leetcode 之螺旋矩阵(头条和美团真题)

    微信公众号:每天晒白牙 关注可了解更多编程知识.问题或建议,请公众号留言;如果你觉得文章对你有帮助,欢迎关注与转发 题目描述 给定一个包含 m*n 个元素的矩阵(m 行,n 列),请按顺时针螺旋顺序, ...

  4. 用python做算法_自己用python写的螺旋矩阵生成算法

    自己用python写的螺旋矩阵生成算法 如果输入6,可以生成如下矩阵: 1 20 19 18 17 16 2 21 32 31 30 15 3 22 33 36 29 14 4 23 34 35 28 ...

  5. LeetCode实战:螺旋矩阵 II

    题目英文 Given a positive integer n, generate a square matrix filled with elements from 1 to n^2 in spir ...

  6. 1050. 螺旋矩阵(25)

    本题要求将给定的N个正整数按非递增的顺序,填入"螺旋矩阵".所谓"螺旋矩阵",是指从左上角第1个格子开始,按顺时针螺旋方向填充.要求矩阵的规模为m行n列,满足条 ...

  7. java55矩阵output_leetcode 59 螺旋矩阵2 Java 用时较短-Go语言中文社区

    题目: 给定一个正整数 n,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵. 示例: 输入: 3 输出: [ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, ...

  8. LeetCode 59 Spiral Matrix II(螺旋矩阵II)(Array)

    版权声明:转载请联系本人,感谢配合!本站地址:http://blog.csdn.net/nomasp https://blog.csdn.net/NoMasp/article/details/5214 ...

  9. LeetCode Spiral Matrix II (生成螺旋矩阵)

     Given an integer n, generate a square matrix filled with elements from 1 to n2 in spiral order. F ...

最新文章

  1. 山沟沟里的实业路(3)
  2. 俞敏洪:如果创业者缺乏这8种能力,失败可能性很大
  3. 目标检测必看——RCNN是怎样融合了分类与回归,CNN与SVM
  4. linux环境下远程访问ftp
  5. teched2006会议资料
  6. Linux基本命令 -- grep参数说明及常用用法
  7. maven 集成 CXF
  8. 任正非卸任上海华为董事;百度“云手机”今日线上发布;Inkscape 1.0 RC 版发布 | 极客头条...
  9. MyBatis-Plus速览【学习笔记】
  10. ASP.NET使用ConfigurationSection在Web.Config创建自定义配置节
  11. 电磁计算仿真方法和FEKO软件简介
  12. 超定方程组最小二乘matlab,超定方程组最优解(最小二乘解)推导
  13. CATIA二次开发-装配技术
  14. PASCAL VOC数据集训练集、验证集、测试集的划分和提取
  15. Python发送QQ邮件常见报错和代码
  16. 头歌JAVA数据结构答案
  17. 计算机视觉工程师装机软件一览
  18. 线性代数(19)——行列式(下)
  19. PAT(乙级)2019年春季考试 7-5 校庆
  20. Elasticsearch分片原理

热门文章

  1. pytorch慢到无法安装,该怎么办?
  2. ZYAR20A 亚克力2驱 蓝牙 298寻迹避障机器人 —— 小车黑线循迹实验 四驱
  3. 【Tools】Bandicam安装和卸载
  4. 【Linux】一步一步学Linux——runlevel命令(137)
  5. 【Linux】一步一步学Linux——whoami命令(96)
  6. GVIM编辑器的配置
  7. 关于VS环境下制作和使用静态库和动态库
  8. MacOS下保护浏览器主页和默认搜索
  9. 关于将struts2框架下,使自定义过滤器对部分的action(一个action或多个action)请求忽略的方法
  10. 微擎css使用php变量,$_Wamp;全局变量