蛇形填数

时间限制:3000 ms | 内存限制:65535 KB
难度:3

描述

在nn方陈里填入1,2,…,nn,要求填成蛇形。例如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


从红色起点开始填,一个模拟过程

#include<bits/stdc++.h>
using namespace std;
int a[105][105];
int main()
{int n,x,y,z;while(~scanf("%d",&n)){memset(a,0,sizeof(a));z = a[x=0][y=n-1] = 1;//从右上角开始填while(z<n*n){while(x+1 < n && !a[x+1][y])    a[++x][y] = ++z;//填未填过的最后一列,y不变,x每次加一,但要保证x最大为n-1while(y-1 >=0 && !a[x][y-1])    a[x][--y] = ++z;//填未填过的最后一行,x不变,y每次减一,但要保证y最小值 0while(x-1 >=0 && !a[x-1][y])    a[--x][y] = ++z;//填未填过的第一列,y不变,x每次减一,但要保证x最小值是 0while(y+1 < n && !a[x][y+1])    a[x][++y] = ++z;//填未填过的第一行,x不变,y每次加一,但要保证y最大值是n-1}for(int i=0;i<n;i++){for(int j=0;j<n;j++){if(j)   printf(" ");printf("%d",a[i][j]);}puts("");}}return 0;
}

看的是很久之前买的书,刘汝佳紫书上的代码

NYOJ 33 蛇形填数——————思维相关推荐

  1. 紫书 程序 3-3 蛇形填数

    页码40页 因为填数字只有一个顺序就是先 下 - 左 - 上 - 右 -下 ... 所以写了四个函数代表四种步骤 执行 下 这个函数 跳出条件有两种 一种是撞墙 另外一种是 撞到自己走过的路 跳出后就 ...

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

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

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

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

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

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

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

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

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

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

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

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

  8. 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的值.( ...

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

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

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

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

最新文章

  1. 华为公有云架构解决方案
  2. ACM 1740 A New Stone Game http://acm.pku.cn/JudgeOnline/problem?id=1740
  3. Using Regular Expression to validate a Guid
  4. wordpress中文乱码处理方法
  5. 计算机机械应用,浅析计算机技术在机械自动化的应用(原稿)
  6. linux c之管道的介绍、创建关闭和简单读写(父进程向子进程写入数据)
  7. JAVA中返回值为字母时_LeetCode#524通过删除字母匹配到字典里最长单词-java中CompareTo方法用法以及Comparator中Compare方法返回值...
  8. spriteatlas 白屏的问题_Discuz白屏问题解决思
  9. Node.js 应用故障排查手册 —— 大纲与常规问题指标简介
  10. Angular 6+ 之新版service
  11. 基于边缘计算的森林火警监测系统
  12. mysql修改工资字段_mysql- 修改字段
  13. 详解 Flink 实时应用的确定性
  14. Rancher 2.2.2 Stable版本发布,生产可用!
  15. 大数据之路,阿里巴巴大数据实践
  16. c++ CImage类的常用命令
  17. 先码后看,程序员的「双节」该买点什么?
  18. 2022 互联网中秋月饼大赏,腾讯送火腿,字节寓意圆满,你最钟爱哪款呢?(文末有抽奖)...
  19. 使用 AppFuse 的七个理由之二
  20. uni-app优秀插件

热门文章

  1. kali linux系统下安装 VMware Tools
  2. 网吧lol正在连接服务器,网吧steam在连接至steam服务器时遇到问题的处理办法
  3. 799-C++异常类型以及多级catch匹配
  4. keras+卷积神经网络HWDB手写汉字识别
  5. 记PMP 考试2021/06/20总结(含笔记)
  6. php amp 转义,HTML转义和反转义
  7. 日常交通工具日语词汇
  8. 论文笔记(九):Assessing the Suitability and ... Mixed Reality Interfaces for Accurate Robot Teleoperation
  9. 运算放大器---转换速率(slew rate)
  10. JavaScript 每日一题 #7