【来自深度优先搜索】
2024-07-23 18:52:37
发布于:浙江
18阅读
0回复
0点赞
主打一个懒节约
#include<iostream>
using namespace std;
int n,A[102][102]={},a[4]={-1,0,1,0},b[4]={0,1,0,-1},sum=2,x=1,y=1;
int main(){
cin>>n;
A[1][1]=1;
for(int i=1;sum<=n*n;i++){
while(A[x+a[i%4]][y+b[i%4]]==0&&x+a[i%4]<=n&&y+b[i%4]<=n&&x+a[i%4]>0&&y+b[i%4]>0){
x+=a[i%4];
y+=b[i%4];
A[x][y]=sum++;
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
cout<<A[i][j]<<" ";
}cout<<endl;
}
}
我挺懒令人呕吐的(while)
这里空空如也
有帮助,赞一个