题解 | #回型矩阵#

回型矩阵

https://ac.nowcoder.com/acm/problem/22230

#include<bits/stdc++.h>
 using namespace std;
  int res[100][100];
    int main()
   {
       int n;
       cin>>n;
    int dx[]{0,1,0,-1},dy[]{1,0,-1,0};
    for (int x=0,y=0,d=0,k=1;k<=n*n;k++)
         {
       res[x][y]=k;
       int a=x+dx[d],b=y+dy[d];
      if(a<0||a>=n||b<0||b>=n||res[a][b])
         {
        d=(d+1)%4;
        a=x+dx[d],b=y+dy[d];
        }
    x=a,y=b;
    }
    for(int i=0;i<n;i++)
        {
    for(int j=0;j<n;j++)cout<<res[i][j]<<' ';
        cout<<endl;
        }
         return 0;
       }
全部评论
#include<bits> using namespace std; int res[100][100]; int main() { int n; cin>>n; int dx[]{0,1,0,-1},dy[]{1,0,-1,0}; for (int x=0,y=0,d=0,k=1;k<=n*n;k++) { res[x][y]=k; int a=x+dx[d],b=y+dy[d]; if(a<0||a>=n||b<0||b>=n||res[a][b]) { d=(d+1)%4; a=x+dx[d],b=y+dy[d]; } x=a,y=b; } for(int i=0;i</bits>
点赞 回复 分享
发布于 2022-12-12 18:56 湖南

相关推荐

评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务