- 蛇形填数2
再发一遍代码
- 2024-4-9 23:27:56 @
#include<bits/stdc++.h>
using namespace std;
int a[105][105]={0};
int main(){
// ios::sync_with_stdio(0);
// cin.tie(0);
// cout.tie(0);
int n,m;
scanf("%d %d",&n,&m);
memset(a,0,sizeof(a));
int tot=1,x=0,y=m-1;
a[x][y]=1;
while(tot<n*m){
while(x+1<n&&!a[x+1][y]) a[++x][y]=++tot;
while(y-1>=0&&!a[x][y-1]) a[x][--y]=++tot;
while(x-1>=0&&!a[x-1][y]) a[--x][y]=++tot;
while(y+1<n&&!a[x][y+1]) a[x][++y]=++tot;
}
for(int i=0;i<n;i++){
for(int j=0;j<m;j++){
printf("%5d",a[i][j]);
}
printf("\n");
}
return 0;
}
1 条评论
-
Captainfish LV 7 @ 2024-4-11 9:48:40
y=n-1
- 1
信息
- ID
- 78
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 7
- 标签
- 递交数
- 682
- 已通过
- 175
- 上传者