蛇形方阵
发布时间
阅读量:
阅读量
题目描述
提供一个不超过 9 的正整数 nn,生成一个 n×n 的蛇形矩阵。
从左上角开始填入数字 1,按照顺时针方向依次填充后续数值,如示例所示。需要注意的是,每个数字均占据 3 个字符的位置,不足部分需用空格进行补充。
示例:
输入说明:
n(int内)
输出说明:
蛇形矩阵
输入输出示例
输入 4
输出
1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7
#include<bits/stdc++.h>
using namespace std;
int a,b[1000][1000],x=1,y;
int main()
{
cin>>a;
y=a;
b[x][y]=1;
for(int i=1;i<a*a;)
{
while(b[x+1][y]==0&&x<a)
b[++x][y]=++i;
while(b[x][y-1]==0&&y>1)
b[x][--y]=++i;
while(b[x-1][y]==0&&x>1)
b[--x][y]=++i;
while(b[x][y+1]==0&&y<a)
全部评论 (0)
还没有任何评论哟~
