♻️lzhh_lzhh32 • 4个月前
#include<bits/stdc++.h>
using namespace std;
int n,cnt=1,i,j;
int a[45][45]; //从[0][0]开始存
int main(){
cin>>n;
a[0][n/2]=cnt;
cnt++;
j=n/2;
while(cnt<=n*n){
i--;
j++;
if(i<0&&j>=n){ //右上角
i=1;
j=n-1;
}else{
if(i<0) i=n-1;
if(j>=n) j=0;
}
if(a[i][j]!=0){ //右上角有数字了
i+=2;
j--;
}
a[i][j]=cnt;
cnt++;
}
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
cout<<a[i][j]<<' ';
}
cout<<endl;
}
return 0;
}
评论:
请先登录,才能进行评论