题目:点击打开链接

分析:一道bfs题,由于到达一点需要判断经过了几个障碍,所以在vis数组中需要加上一维来表示经过的障碍物,因为到达一点的可行路径是不同的,如果单纯的用vis[x][y],来表示点的状态,会有覆盖,所以需要三维数组。其他的地方就是bfs模板了。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
using namespace std;
#define LL long long
struct pointe
{int x,y,v,d;
}p[1000];
int a[22][22];
bool vis[22][22][22];
int d[4][2]={{0,1},{0,-1},{-1,0},{1,0} };
int T,m,n,k,x,y,v;
int bfs()
{memset(vis,0,sizeof(vis));int moven=0,save=1;p[0].x=1;p[0].y=1;p[0].v=0;p[0].d=0;vis[1][1][0]=1;while(moven<save){pointe now=p[moven++];for(int i=0;i<4;i++){x=now.x+d[i][0];y=now.y+d[i][1];v=now.v;if(a[x][y])v++;else v=0;if(v<=k&&!vis[x][y][v]&&x>0&&x<=m&&y>0&&y<=n){if(x==m&&y==n)return now.d+1;p[save].x=x,p[save].y=y,p[save].d=now.d+1,p[save].v=v;save++;vis[x][y][v]=1;}}}return -1;
}
int main()
{//freopen("f.txt","r",stdin);scanf("%d",&T);while(T--){scanf("%d%d%d",&m,&n,&k);for(int i=1;i<=m;i++)for(int j=1;j<=n;j++)scanf("%d",&a[i][j]);cout<<bfs()<<endl;}return 0;
}

习题6-5巡逻机器人 UVa 1600 bfs相关推荐

  1. UVA - 1600 Patrol Robot (巡逻机器人)(bfs)

    题意:从(1,1)走到(m,n),最多能连续穿越k个障碍,求最短路. 分析:obstacle队列记录当前点所穿越的障碍数,如果小于k可继续穿越障碍,否则不能,bfs即可. #pragma commen ...

  2. 习题6-5 UVA1600 巡逻机器人 Patrol Robot

    难度:4 稍微难一点的bfs,以前数组的bfs都是用二维,来记录这个点入过队没有,但是题目加了一个条件,那就是最多连续穿墙不超过一个数,那么这就又是一维状态,加一维来表示到这个点连续穿墙的次数,也就是 ...

  3. 习题6-5 巡逻机器人(Patrol Robot, ACM/ICPC Hanoi 2006, UVa1600)

    同Uva816,本题在本质上也是迷宫问题,连续穿越的次数k起到了关键作用,故用三元组表示状态. #include <iostream> #include <string> #i ...

  4. UVA 1600 巡逻机器人

    巡逻机器人 Time Limit:3000MS     Memory Limit:0KB     64bit IO Format:%lld & %llu 题意·:一个机器人从(1,1)点走到( ...

  5. BFS 巡逻机器人

    巡逻机器人 题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=83498#problem/F 题目大意: 机器人在一个矩形区域巡逻, ...

  6. 巡逻机器人(BFS)

    巡逻机器人问题(F - BFS,推荐) Description   A robot has to patrol around a rectangular area which is in a form ...

  7. 瓦力机器人故障维修_大眼萌!5G巡逻机器人亮相乌镇,24小时值守互联网大会...

    大大的眼睛,方方的身体, 一台酷似"瓦力"的机器人 出现在互联网之光新展馆. 原来这是嘉兴公安的"新同事"-5G巡逻机器人,今天是它第一天上岗.这也是本次世界互 ...

  8. 巡逻机器人用应用的pc端车牌识别

    PC端车牌识别产品形态 加密锁.车牌识别SDK开发包.开发文档 pc端车牌识别使用背景 人工智能的发展,京东送件也用上了送件机器人,某机器人公司如今研发出巡逻机器人,用于对可以车辆的抓拍与检查,在停车 ...

  9. 安防巡逻机器人在不同应用场景下的作用是什么?

    目前,传统的安防行业正在加速人工智能在该领域的集成和应用.随着人工智能安防技术进一步加强,如今,很多城市都开始纷纷打造一座智慧型城市,安防机器人也普遍出现在各个行业当中,下面,国辰机器人就为大家来盘点 ...

最新文章

  1. 【随笔】深度学习之美——杨家有女初长成,养在深闺人未识
  2. 使用Google Test的一个简单例子
  3. MySQL线上优化_线上MySQL千万级大表,如何优化?
  4. 手机User-Agent大全(Android爬虫)
  5. html中iframe根据子页面内容动态修改高度
  6. mybatis的xml文件 比较详细的学习注意点
  7. 第一部分 第三章 1039-1058 答案合集
  8. 科学期刊中关于计算机视觉,计算机视觉相关专业JCR1区期刊
  9. 如何切换水经注地图下载器中的小数度和度分秒显示
  10. 软考:系统分析师考试大纲
  11. Could not resolve com.huawei.agconnect:agcp
  12. html 表单 js 提交,js实现表单提交submit(),onsubmit
  13. 腾讯发布三项息争前提 360将扣扣保镖下线
  14. 移除联想M5210阵列卡(3650M5)的缓存模块以开启JBOD模式
  15. GreenPlum数据库卸数、装数
  16. 台式计算机屏幕亮度在哪调,电脑亮度怎么调?教您电脑亮度在哪里调
  17. EndNote20 快捷键
  18. Qt编写的复杂象棋程序 chessbroad.cpp 错误比较多
  19. 《深入理解计算机系统》学习笔记——处理器体系结构
  20. java运行环境下载(我的世界Java运行环境)

热门文章

  1. java实现图片滚动_怎么用Java代码使图片自行滚动浏览
  2. 2021-2022下沉市场研究报告合集(共46份)
  3. lisp不是函授型语言_为什么Common Lisp是一门难学的语言
  4. SOA服务颗粒度(粗粒度、细粒度)与解耦
  5. 亿信华辰:怎样去断定一份数据的质量高低?数据质量如何评估?
  6. 如何把D盘多余空间返还给C盘
  7. linux kernel mtd 分区
  8. history路由下,Whitelabel Error Page错误
  9. 微信小程序与内嵌网页交互实现支付功能
  10. 当域名被微信封了怎么办?