- 蛇形填数2
想问一下,我的代码为什么会超时,感觉和老师写的一样啊
- 2024-4-9 23:26:20 @
#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; }
0 条评论
目前还没有评论...
信息
- ID
- 78
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 7
- 标签
- 递交数
- 682
- 已通过
- 175
- 上传者