请问大佬这个问题在哪不能这样写吗为什么谢谢
查看原帖
请问大佬这个问题在哪不能这样写吗为什么谢谢
856898
Cartier楼主2023/3/11 23:57
#include<iostream> 
using namespace std;
int b[40][40]={0};
	void jh(int k,int a){
		for(int i=0;i<a;i++){
			for(int j=0;j<a;j++){
				if(b[0][j]==k-1&&j!=a-1){
					b[a-1][j+1]=k;
				}
				else if(b[i][a-1]==k-1&&i!=0){
					b[0][i-1]=k;
				}
				else if(b[0][a-1]==k-1){
					b[1][a-1]=k;
				}
				else {
					if (b[i-1][j+1]==0){
						b[i-1][j+1]=k;
					}
					else{
						b[i+1][j]=k;
						
					}
				}
			}
		}
	}
int main(){
int a=0;
	cin>>a;

	b[0][(a-1)/2]=1;

int t=a*a;
	for(int k=2;k<=t;k++){
		
		jh(k,a);
	}
	 
	for(int i=0;i<a;i++){
		for(int j=0;j<a;j++){
			cout<<b[i][j]<<" ";
		}
		cout<<endl;
	}
	return 0;
}
2023/3/11 23:57
加载中...