本文主要是介绍螺旋形迷宫(c++题解),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目描述
题目描述
一个的方阵迷宫,每格有一个整数。左上角坐标为,右下角坐标为。现从左上角开始,按顺时针方向在迷宫中行走,按螺旋形一直走到迷宫的中心。依行走顺序输出每格的数字。
输入格式
第行:个整数 接下来行,每行个空格分开的整数,每个数不超过.
输出格式
第行:按要求依次输出个数,各数之间用一个空格分开。
样例
样例输入
复制4
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
样例输出
复制1 2 3 4 8 12 16 15 14 13 9 5 6 7 11 10
____________________________________________________________________________
日常发作业题解。
也是简单到爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆表的题
写作不易,点个赞呗!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
_________________________________________________________________________
#include <bits/stdc++.h>
using namespace std;
int a[1005][1005],b[1005][1005],c[4][2]={{0,1},{1,0},{0,-1},{-1,0}};
int n,x=1,y=0,idx=0;
int main(){cin>>n;for(int i=0;i<=n+1;i++){for(int j=0;j<=n+1;j++){if(i==0||j==0||i==n+1||j==n+1)b[i][j]=1;else cin>>a[i][j]; }}n*=n;while(n>0){if(b[x+c[idx][0]][y+c[idx][1]]==1){idx++;idx%=4;}x+=c[idx][0],y+=c[idx][1];b[x][y]=1;cout<<a[x][y]<<" ";n--;}
}
这篇关于螺旋形迷宫(c++题解)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!