-
个人简介
我是散兵,五条悟,万叶的狗!!! 送你个头代码:
#include<bits/stdc++.h> using namespace std; int main() { return 0; }
有没有人玩原神? UID:306468186#include<bits/stdc++.h> using namespace std; int dx[5]={0,0,-1,0,1}; int dy[5]={0,-1,0,1,0}; int m,n,a[1005][1005],ans,t,xx; struct z{ int x,y,s; }w; queueq; int bfs(){ int x,y,s,nx,ny; for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ if(a[i][j]==2)q.push({i,j,0}); } } q.push({1,1,0}); while(!q.empty()){ w=q.front(); q.pop(); x=w.x; y=w.y; s=w.s; for(int i=1;i<=4;i++){ nx=x+dx[i]; ny=y+dy[i]; if(nx>0&&nx<=n&&ny>0&&ny<=m&&a[nx][ny]==1){ q.push({nx,ny,s+1}); a[nx][ny]=2; } } if(q.empty()){ for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ if(a[i][j]==1){ return -1; } } } return s; } } return -1; } int main() { //freopen("tangerine.in","r",stdin); //freopen("tangerine.out","w",stdout); cin>>t; for(int i=1;i<=t;i++) { cin>>n>>m; for(int i=1;i<=n;i++) { for(int j=1;j<=m;j++) { cin>>a[i][j]; } } cout<<bfs()<<endl; q=queue(); } return 0; }
-
通过的题目
- 701
- 702
- 703
- 704
- 705
- 706
- 712
- 713
- 714
- 756
- 763
- 764
- 765
- 777
- 778
- 779
- 785
- J0001
- J0010
- J0101
- J0102
- J0104
- J0107
- J0011
- J0111
- J0012
- J0013
- J0014
- J0015
- J0016
- J0017
- J0018
- J0002
- J0029
- J0003
- J0004
- J0042
- J0005
- J0053
- J0054
- J0059
- J0006
- J0060
- J0066
- J0069
- J0007
- J0076
- J0008
- J0080
- J0086
- J0009
- 913
- 917
- 918
- 921
- 925
- 926
- 929
- 934
-
最近活动
- 202505函数 作业
- 二分答案 作业
- 20250408测试题目 作业
- 广搜 作业
- 20250118-综合测试 作业
- 20250118期末考试 作业
- 20250117测试 作业
- 20241226小学测试 作业
- 202412多重循环 作业
- 202411循环结构 作业
- 2024小学7月测试 作业
- DFS深搜 作业
- 2024小学排序 作业
- 二维数组 作业
- 递归--基础班 作业
- 2024新生月测订正 作业
- 前缀和与差分 作业
- 数据结构--栈 作业
- 2024新生班-数组 作业
- 2023-2024基础班测试订正 作业
- 函数 作业
- 结构体--基础班 作业
- 2024新生班-多重循环 作业
- 字符与字符串--基础班 作业
- 2024小学编程新班【循环】 作业
- 2024年小学新班【分支结构】 作业
题目标签
- 基础循环
- 22
- DFS
- 18
- 字符串
- 17
- 二维数组
- 14
- 多重循环
- 13
- 函数
- 12
- 模拟
- 12
- 数组
- 10
- 递归
- 10
- 分支
- 10
- 字符与字符串
- 9
- 数组排序
- 8
- 栈
- 7
- 二分答案
- 7
- 循环
- 5
- 前缀和
- 5
- BFS
- 5
- 搜索
- 4
- 一維数组
- 3
- 结构体
- 3