输出回形数组

来源:互联网 发布:京东跟淘宝有什么区别 编辑:程序博客网 时间:2024/05/22 06:22

输出回形数组

时间限制: 1 Sec  内存限制: 128 MB
提交: 54  解决: 28 

题目描述

输入正整数N(N≤9)按照回形输出整数1~N2 

按照题目要求,数组中的最大值是81,因此按照%3d格式输出每个元素的值即可。

输入

1

输出

  1

输入

5

输出

  1  2  3  4  5
 16 17 18 19  6
 15 24 25 20  7
 14 23 22 21  8
 13 12 11 10  9

样例输入

3

样例输出

 1 2 3 8 9 4 7 6 5

#include <cstdio>

#include <cstring>#include <iostream>#include <algorithm>#include <cmath>using namespace std;int n,a[100][100];int main(){    cin>>n;    int index=1,i=0,j=0;    while(index<=n*n)    {       while(a[i][j]==0&&j<n)       {           a[i][j++]=index++;       }j--;i++;       while(a[i][j]==0&&i<n)       {           a[i++][j]=index++;       }i--;j--;       while(a[i][j]==0&&j>=0)       {           a[i][j--]=index++;       }j++;i--;       while(a[i][j]==0&&i>=0)       {           a[i--][j]=index++;       }i++;j++;    }    for(i=0;i<n;i++)    {        for(j=0;j<n;j++)        {            printf("%3d",a[i][j]);        }        cout<<endl;    }}
原创粉丝点击