Run ID | 作者 | 问题 | 语言 | 测评结果 | Time | Memory | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|
118240 | 刘佳宇 | 螺旋矩阵 | C++ | Accepted | 2 MS | 268 KB | 479 | 2025-04-26 11:51:01 |
#include<bits/stdc++.h> int a[21][21]; using namespace std; int main(){ int n,k=1,x=1,y=1; cin>>n; a[1][1]=1; while(k<n*n){ while(y+1<=n&&a[x][y+1]==0){ a[x][++y]=++k;//先加 } while(x+1<=n&&a[x+1][y]==0){ a[++x][y]=++k; } while(y-1>=1&&a[x][y-1]==0){ a[x][--y]=++k; } while(x-1>=1&&a[x-1][y]==0){ a[--x][y]=++k; } } for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ printf("%4d",a[i][j]); } cout<<endl; } }