| Run ID | 作者 | 问题 | 语言 | 测评结果 | Time | Memory | 代码长度 | 提交时间 |
|---|---|---|---|---|---|---|---|---|
| 158300 | 王垚植 | 方阵填数 | C++ | Accepted | 4 MS | 280 KB | 729 | 2026-08-20 18:02:25 |
#include<bits/stdc++.h> using namespace std; int main(){ int N; cin>>N; int a[101][101]; int n=1; int top=0,bottom=N-1,left=0,right=N-1; while (n<=N*N){ for (int i=top;i<=bottom && n<=N*N;i++){ a[i][right]=n; n++; } right--; for (int i=right;i>=left && n<=N*N;i--){ a[bottom][i]=n; n++; } bottom--; for (int i=bottom;i>=top && n<=N*N;i--){ a[i][left]=n; n++; } left++; for (int i=left;i<=right;i++){ a[top][i]=n; n++; } top++; } for (int i=0;i<N;i++){ for (int j=0;j<N;j++){ cout<<a[i][j]<<endl; } } return 0; }