NYOJ——33 蛇形填数
来源:互联网 发布:生态科技成大数据企业 编辑:程序博客网 时间:2024/05/22 01:51
蛇形填数
时间限制:3000 ms | 内存限制:65535 KB
难度:3
- 描述
- 在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 16 9 25 4 3
被坑了,一组测试数据,算法经典上的代码直接复制过来了
#include<iostream>#include<stdio.h>#include<string.h>#include<math.h>#include<ctype.h>#include<stdlib.h>#include<string>#include<algorithm>#include<vector>#include<set>#include<map>#include<list>#include<queue>#include<stack>#include<iomanip>#include<numeric>#include <istream> //基本输入流#include <ostream> //基本输出流#include <sstream> //基于字符串的流#include <utility> //STL 通用模板类#include <complex.h> //复数处理#include <fenv.h> //浮点环境#include <inttypes.h> //整数格式转换#include <stdbool.h> //布尔环境#include <stdint.h> //整型环境#include <tgmath.h> //通用类型数学宏#define L(a,b,c) for(int a = b;a >= c;a --)#define M(a,b,c) for(int a = b;a < c;a ++)#define N(a,b) memset(a,b,sizeof(a));const int INF=1<<31;const int inf=-INF;typedef int T;typedef double D;typedef char C;using namespace std;int a[111][111],n;int main(){ int x,y; scanf("%d",&n); int t; N(a,0) t = 1; a[x = 0][y = n-1] = 1; for(;t<n*n;) { while(x + 1 < n && !a[x + 1][y]) a[++ x][y] = ++ t; while(y - 1 >= 0 && !a[x][y - 1]) a[x][-- y] = ++ t; while(x - 1 >= 0 && !a[x - 1][y]) a[-- x][y] = ++ t; while(y + 1 < n && !a[x][y + 1]) a[x][++ y] = ++t; } M(i,0,n) { M(j,0,n) printf("%d ",a[i][j]); printf("\n"); }}
0 0
- NYOJ——33 蛇形填数
- 渣渣ACM日记——33-蛇形填数(NYOJ)
- NYOJ 33 蛇形填数
- NYoj 33 蛇形填数
- NYOJ-33 蛇形填数
- NYOJ 33 蛇形填数
- NYOJ-蛇形填数-33
- NYOJ 蛇形填数 33
- NYOJ 33-蛇形填数
- NYOJ-33 蛇形填数
- NYOJ 33 蛇形填数
- NYOJ 33 蛇形填数
- NYOJ-33蛇形填数
- NYOJ 33 蛇形填数
- NYOJ-33-蛇形填数
- nyoj 33 蛇形填数
- nyoj 33 蛇形填数
- NYOJ-33 蛇形填数
- 代码规范
- [置顶] 开源项目几点心得,Java架构必会几大技术点
- 如何添加"common.h"这样的头文件
- java-如何去掉JFrame上的最大化最小化和关闭按钮
- C++ JsonCpp 使用(完整代码下载)
- NYOJ——33 蛇形填数
- 在easyui datagrid中formatter数据后使用linkbutton
- Mybatis 插入数据后返回主键值
- codeforces#322 div2
- SpringMVC中StringHttpMessageConverter乱码处理
- Android 使用高德SDK实现导航笔记
- 胜者树与败者树
- HTML5 in Drupal 7
- Nodejs学习<1>