NYOJ 33 蛇形填数
来源:互联网 发布:mfc编程教程 编辑:程序博客网 时间:2024/06/05 06:26
蛇形填数
时间限制:3000 ms | 内存限制:65535 KB
- 描述
- 在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 <stdio.h>int main(){ int n,i,j,y,z,m,a,b,x=1; scanf("%d",&n); int Sz[n][n]; if(n%2!=0)//如果是奇数方阵,就率先赋值中心下标数组值 Sz[n/2][n/2]=n*n; a=0;b=n-1;y=n-1,z=n-1; m=n/2; while(m--){ //0~m-1,m表示遍历的圈数 i=a;j=b; for(;i<y;i++,x++){ //z表示遍历每圈需要遍历的行or列数;i,j表示每圈最右上角数组下标 Sz[i][j] = x; Sz[j][n-1-i] = x+z; Sz[n-1-i][j-z] = x+2*z; Sz[j-z][i] = x+3*z; } a++; b--; x+=3*z; //x表示每圈最右上角的真值 y--; //y--因为有i++,相当于范围-=2; z-=2; } for(i=0;i<n;i++){ for(j=0;j<n;j++) printf("%d ",Sz[i][j]);//printf("%-4d",Sz[i][j]); printf("\n"); } return 0;}
阅读全文
0 0
- 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 蛇形填数
- NYOJ 33 蛇形填数
- NYOJ 33 蛇形填数
- delphi多线程TThread详解
- Android 使用grade实现Android 项目debug版与release版共存
- 【案例分享】项目施工进度报告 – 树形报表
- java.nio.charset.MalformedInputException: Input length = 2 解决办法
- linux c 实现简易HTTP服务器
- NYOJ 33 蛇形填数
- Fragment生命周期测试
- Appium+python环境搭建
- 【Ac自动机】hdu 5880 Family View
- 还在为画“类Word文档报表”而发愁吗?
- Linux命令之vi/vim
- Android中密码输入内容可见性切换
- MyBatis学习(一) 入门+例子
- js Blob对象介绍