好耶,沙发~
2023-03-24 21:40:34
发布于:浙江
102阅读
0回复
0点赞
这题作为一道入门题来讲,还真有难度,但不用慌,AC CODE 我摆上了,不会的来看看~
#include<bits/stdc++.h>
using namespace std;
int ans[1111][1111];
int main(){
int n,flag=0,now=1;
cin>>n;
int x=1,y=1;
while(now<=n*(n+1)/2){
ans[x][y]=now,ans[n-x+1][n-y+1]=n*n-now+1;
now++;
if(x==1&&!flag)y++,flag=!flag;
else if(y==1&&flag)x++,flag=!flag;
else {
if(flag)x++,y--;
else x--,y++;
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
printf("%d ",ans[i][j]);
}
printf("\n");
}
}
其实就是找规律,找每个数之间的关系,再一个个输出,不多做介绍,这题有点小难度,码风有点正式了,不过不是大问题
这里空空如也
有帮助,赞一个