蛇形填数

描述
在n*n方陈里填入1,2,...,n*n,要求填成蛇形。例如n=4时方陈为:
10 11 12 1
9 16 13 2
8 15 14 3
7 6 5 4
输入
直接输入方陈的维数,即n的值。(n<=100)
输出
输出结果是蛇形方陈。
样例输入
3
样例输出
7 8 1
6 9 2
5 4 3

思想:定义四个数top, bottom, left, right来表示矩阵的最外围四个面的索引值,在迭代过程中使top和bottom、left和right逐步靠近,直到相等则迭代结束。

代码实现如下:

#include<iostream>using namespace std;int main()
{int n;cin >> n;int a[100][100];//分别定义四个方位的索引值大小,使矩阵不断向中间缩小,从外围向中间填满int top = 0, bottom = n - 1, left = 0, right = n - 1;int num = 1;while (top <= bottom && left <= right){//最右侧一列for (int i = top; i <= bottom; i++){a[i][right] = num;num++;}right--;//最底端一行for (int i = right; i >= left; i--){a[bottom][i] = num;num++;}bottom--;//最左侧一列for (int i = bottom; i >= top; i--){a[i][left] = num;num++;}left++;//最上面一行for (int i = left; i <= right; i++){a[top][i] = num;num++;}top++;}//输出for (int i = 0; i < n; i++){for (int j = 0; j < n; j++){cout << a[i][j] << " ";}cout << endl;}system("pause");return 0;
}

ACM在线测试题C++实现蛇形填数相关推荐

  1. 2020年第十一届蓝桥杯 - 省赛 - C/C++大学生A组 - C.蛇形填数

    2020年第十一届蓝桥杯 - 省赛 - C/C++大学生A组 - C.蛇形填数 Ideas 这题其实严格意义上属于一道找规律的题目,并不是啥算法题. 我们可以先按照它的规律多写几行. 1 2 6 7 ...

  2. 2020年第十一届蓝桥杯 - 省赛 - Python大学组 - D.蛇形填数

    这道题同样还是: 2020年第十一届蓝桥杯 - 省赛 - C/C++研究生组 - D.蛇形填数 2020年第十一届蓝桥杯 - 省赛 - Java研究生组 - D.蛇形填数 Ideas 这题其实严格意义 ...

  3. 计算机精英协会考核题 —— 第二题:蛇形填数

    题目 2.蛇形填数 给出 n * n 方阵,要求从 1 开始按顺序依次填写,填写方式如下: n = 4 时, 1 8 9 16 2 7 10 15 3 6 11 14 4 5 12 13 输入 n,请 ...

  4. 第十一届蓝桥杯A组省赛填空试题 C: 蛇形填数(Java)

    试题 C: 蛇形填数 本题总分:10 分 [问题描述] 如下图所示,小明用从 1 开始的正整数"蛇形"填充无限大的矩阵. 容易看出矩阵第二行第二列中的数是 5.请你计算矩阵中第 2 ...

  5. 信息学奥赛一本通 2045:【例5.13】蛇形填数

    [题目链接] ybt 2045:[例5.13]蛇形填数 [题目考点] 1. 二维数组 2. 方向数组(可能用到) int dir[4][2] = {{1,0},{0,-1},{-1,0},{0,1}} ...

  6. 信息学奥赛一本通(2045:【例5.13】蛇形填数)

    2045:[例5.13]蛇形填数 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 374     通过数: 191 [题目描述] 在n×nn×n方阵里填入1,2,3 ...

  7. NYOJ33 - 蛇形填数

    描述: 在n*n方陈里填入1,2,-,n*n,要求填成蛇形.例如n=4时方陈为: 10 11 12 1 9 16 13 2 8 15 14 3 7 6 5 4 输入: 直接输入方陈的维数,即n的值.( ...

  8. 南阳oj入门题-蛇形填数

    /** 蛇形填数 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 在n*n方陈里填入1,2,...,n*n,要求填成蛇形.例如n=4时方陈为: 10 11 12 1 9 16 ...

  9. 蓝桥杯真题——蛇形填数(c语言)

    目录 一.题目描述 二.解题思路 三.程序操作 一.题目描述 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可. 如下图所示,小明用从 1 开始的正整数"蛇形" ...

  10. 第十一届蓝桥杯大赛省赛真题-填空题-蛇形填数(Java实现)

    试题 C: 蛇形填数 本题总分:10 分 [问题描述] 如下图所示,小明用从 1 开始的正整数"蛇形"填充无限大的矩阵. 容易看出矩阵第二行第二列中的数是 5.请你计算矩阵中第 2 ...

最新文章

  1. Version 1.3.1_01 of the JVM is not suitable for this product.Version:1.4.1 or greater is required。
  2. ARM Trustzone介绍-视频学习
  3. sql三个表join_「数据蒋堂」第 31 期:JOIN 简化 – 维度对齐
  4. 美国著名核物理学家,前半生为美国造核弹,后半生为中国放牛
  5. MySQL 错误 1366:1366 Incorrect integer value
  6. python读取excel写入mysql_使用Python读Excel数据Insert到MySQL
  7. ListView,GridView的getView多次调用问题
  8. 逻辑回归分析与回归分析_逻辑回归从零开始的情感分析
  9. CruiseControl 安装配置
  10. Vmware 的一些序列号
  11. 小端格式和大端格式(Little-EndianBig-Endian)
  12. 我也来一个“羊了个羊”
  13. maven、gradle 设置MANIFEST.MF配置
  14. 为什么要刨根问底--《你的灯亮着吗?发现问题的真正所在》
  15. 计算机网络基础之传输介质
  16. 安卓FTP客户端无法连接FTP服务器FineFTP
  17. 什么是IP、MAC地址?图文解说它们之间的区别和联系
  18. Idea-02:Three Needs Theory(三需求理论)
  19. General Test of SAP MM Knowledge
  20. 把 ALV 转换成 PDF 格式并发送到 SAP Inbox(此段代码未经笔者验证)

热门文章

  1. 利用Plex和Syncthing搭建媒体中心
  2. Dell电脑插入耳机没反应 解决办法
  3. React Native布局实践:开发京东客户端首页遇到的坑
  4. python二项分布产生随机数_python随机生成 - osc_c10h48oh的个人空间 - OSCHINA - 中文开源技术交流社区...
  5. springboot整合谷歌身份验证
  6. 厦大计算机考研学硕,2021厦大计算机考研招生、复试、书目专业大解析!
  7. HTML网页设计:三、图像标签之<img>标签
  8. 落花人独立,微雨燕双飞——晏几道《临江仙》
  9. 跨链桥:用零知识证明桥接多链宇宙
  10. JavaScript 每日一题 #11