栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

[C语言]右上角起顺时针蛇形方阵

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

[C语言]右上角起顺时针蛇形方阵

题目要求

在n*n方阵里填入1,2,3,…,n*n, 要求填成蛇形. 例如 n=4 时方阵为:

10 11 12 1

9 16 13 2

8 15 14 3

7 6 5 4

Standard Input

有多组测试数据. 输入的第一行是整数T(1<=T<=20), 表示随后测试数据的组数. 每组测试数据占一行, 由正整数n组成. N<=20.

Standard Output

对应每组测试数据, 输出对应的蛇形矩阵, 每个数占四位, 右对齐.

Samples
InputOutput
5
1
2
3
4
5
   1
   4   1
   3   2
   7   8   1
   6   9   2
   5   4   3
  10  11  12   1
   9  16  13   2
   8  15  14   3
   7   6   5   4
  13  14  15  16   1
  12  23  24  17   2
  11  22  25  18   3
  10  21  20  19   4
   9   8   7   6   5
Problem ID1907
Problem Title蛇形填数
Time Limit1000 ms
Memory Limit64 MiB
Output Limit64 MiB
Sourcewxiaoping - 2018.4.24
#include
#include
#define N 20

int a[N][N];
void fun(int n)
{
    memset(a,0,sizeof(a));//矩阵置0 
    int sum=1;
    int i=0,j=n-1;
    a[0][n-1]=1;
    while(sum=0&&a[i][j-1]==0)//向左移动 
        {
            a[i][--j]=++sum;
        }
        while(i-1>=0&&a[i-1][j]==0)//向上 
        {
            a[--i][j]=++sum;
        }
        while(j+1 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/849706.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号