信息数学-幻方
[NOIP2015 提高组] 神奇的幻方
https://www.luogu.com.cn/problem/P2615
https://www.bilibili.com/video/BV1Bf4y1g74C
#include<bits/stdc++.h>
using namespace std;
int n,a[42][42],x,y;
int main(){
cin>>n;
x=1;
y=n/2+1;
a[x][y]=1;
for(int i=2;i<=n*n;i++){
if(x==1 && y!=n){
x=n;
y=y+1;
}else if(x!=1 && y==n){
x=x-1;
y=1;
}else if(x==1 && y==n){
x=x+1;
}else if(x!=1 && y!=n){
if(a[x-1][y+1]==0){
x=x-1;
y=y+1;
}else{
x=x+1;
}
}
a[x][y]=i;
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
cout<<a[i][j]<<" ";
}
cout<<endl;
}
return 0;
}
作者:newcode 更多资源请关注纽扣编程微信公众号

从事机器人比赛、机器人等级考试、少儿scratch编程、信息学奥赛等研究学习

浙公网安备 33010602011771号