未过样例,求调,谢谢大佬!!!
查看原帖
未过样例,求调,谢谢大佬!!!
172136
spencer楼主2023/6/6 20:12
#include<bits/stdc++.h>
using namespace std;

int n,cube[45][45],tmpi,tmpj;
int main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		if(i==1){
			cube[1][n/2+1]=1;
			tmpi=1,tmpj=n/2+1;
			continue;
		}
		if(tmpi==1&&tmpj!=n){
			tmpi=n,tmpj++;
			cube[tmpi][tmpj]=i;
			continue;
		}
		if(tmpj==n&&tmpi!=1){
			tmpi--,tmpj=1;
			cube[tmpi][tmpj]=i;
			continue;
		}
		if(tmpi==1&&tmpj==n){
			tmpi++;
			cube[tmpi][tmpj]=i;
			continue;
		}
		else{
			if(cube[tmpi-1][tmpj+1]!=0){
				tmpi++;
				cube[tmpi][tmpj]=i;
				continue;
			}
			else{
				tmpi--,tmpj++;
				cube[tmpi][tmpj]=i;
				continue;
			}
		}
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			cout<<cube[i][j]<<' ';
		}
		cout<<'\n';
	}
	return 0;
}
2023/6/6 20:12
加载中...