题解
2024-05-15 18:31:22
发布于:上海
13阅读
0回复
0点赞
#include <iostream>
using namespace std ;
int main(){
int x=0 , y , n ;
cin >> n ;
y = n/2 ;
int s[n][n] ;
for(int i = 0 ; i < n ; i++){
for(int j = 0 ; j < n ; j++){
s[i][j] = 0 ;
}
}
s[x][y] = 1 ;
for(int i = 2 ; i <= n*n ; i++){
if(x==0 && y!=n-1){
x = n-1 ;
y++ ;
}
else if(x!=0 && y==n-1){
x-- ;
y = 0 ;
}
else if(x==0 && y==n-1){
x++ ;
}
else if(x!=0 && y!=n-1 && s[x-1][y+1]==0){
x-- ;
y++ ;
}
else{
x++ ;
}
s[x][y] = i ;
}
for(int i = 0 ; i < n ; i++){
for(int j = 0 ; j < n ; j++){
cout << s[i][j] << ' ' ;
}
cout << endl ;
}
}
这里空空如也
有帮助,赞一个