Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
3653 | 季洁 | 螺旋矩阵 | C++ | 解答错误 | 25 | 0 MS | 256 KB | 800 | 2019-12-20 22:40:36 |
#include<iostream> using namespace std; int main(){ int n,p,x=1; cin>>n; int a[n][n]; for(p=0;p<n/2;p++){ //循环次数 ,每次打一回字形 for(int i=p,j=p;j<=n-2-p;j++,x++){ //回字形,第一笔,从左到右,→ a[i][j]=x; } for(int i=p,j=n-1-p;i<=n-2-p;i++,x++){ //回字形,第二笔,从上到下,↓ a[i][j]=x; } for(int i=n-1-p,j=n-1-p;j>=p+1;j--,x++){ //回字形,第三笔,从右到左,← a[i][j]=x; } for(int i=n-1-p,j=p;i>=p+1;i--,x++){ //回字形,第四笔,从下到上,↑ a[i][j]=x; } } a[p][p]=n*n; for(int i=0;i<=n-1;i++){ // 打印二维数组 for(int j=0;j<=n-1;j++){ //打印第 i行 cout<<a[i][j]<<" "; } cout<<"\n"; //每行末,换行 } return 0; }