蒟蒻爆0求助大佬,输出有亿点数字是0
查看原帖
蒟蒻爆0求助大佬,输出有亿点数字是0
565138
xyc0630楼主2022/7/16 08:59

求回答 一定关注

#include<bits/stdc++.h>
using namespace std;
int x,y,z,mat[45][45],g_x,g_y,n;
int main(){
	cin>>n;
	mat[n/2][1]=1;
	g_x=n/2;
	g_y=1;
    for(int o=2;o<=n*n;o++){
    	if(g_y==1&&g_x!=n&&g_x+1<=n&&g_x+1>=1){
    		mat[g_x+1][n]=o;
    		g_x+=1;
    		g_y=n;
		}else if(g_y!=1&&g_x==n&&g_y+1<=n&&g_y+1>=1){
    		mat[1][g_y+1]=o;
    		g_x=1;
    		g_y+=1;
		}else if(g_y==1&&g_x==n&&g_x-1<=n&&g_x-1>=1){
    		mat[g_x-1][g_y]=o;
    		g_x-=1;
		}else if(g_y!=1&&g_x!=n&&mat[g_x+1][g_y-1]==0&&g_x+1<=n&&g_y-1<=n&&g_x+1>=1&&g_y-1>=1){
    		mat[g_x+1][g_y-1]=o;
    		g_x+=1;
    		g_y-=1;
		}else{
			mat[g_x][g_y+1]=o;
    		g_y+=1;
		}
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			cout<<mat[i][j]<<" ";
		}
		cout<<endl;
	}
	
	return 0;
}
2022/7/16 08:59
加载中...