TYVJ 1117 BFS
无限WA。。参考了一下题解和同学写的。。。。。。。
可以在bfs的基础上改一下。。
读入的时候平地权值是2 草地是0
bfs的时候如果搜到的是平地,那么直接加入,如果搜到的是草地,那么记录是草地。
从队列里面拿出来的时候,如果是平地就直接那出来,如果是草地就加到队尾,标记成平地。
目的就是保证层数和时间同步!start和end就看成平地好了
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <queue>
#include <iostream>
using namespace std;
int x,y,t,a[66][66],sx,sy,ex,ey,vis[66][66];
int xx[]={1,-1,0,0},yy[]={0,0,1,-1};
queue <int> s,e;
int bfs()
{
s.push(sx);e.push(sy);
while(!s.empty())
{
int tempa=s.front(),tempb=e.front();
s.pop();e.pop();
if(tempa==ex&&tempb==ey) return vis[tempa][tempb];
if(a[tempa][tempb]==1)//草地加入
{
s.push(tempa);e.push(tempb);
a[tempa][tempb]=2;//标记成平地
vis[tempa][tempb]+=1;
continue;
}
for(int i=0;i<=3;i++)
{
int dx=tempa+xx[i],dy=tempb+yy[i];
if(dx<=x&&dx>0&&dy<=y&&dy>0&&a[dx][dy]!=-1&&!vis[dx][dy])
{
if(a[dx][dy]==0) a[dx][dy]=1;
s.push(dx);e.push(dy);
vis[dx][dy]=vis[tempa][tempb]+1;
}
}
}
}
int main()
{
scanf("%d%d%d",&t,&y,&x);//读入又是反的
char cc;
for(int i=1;i<=x;i++)
{
for(int j=1;j<=y;j++)
{
cin>>cc;
if(cc=='#') a[i][j]=0;
else if(cc=='.')a[i][j]=2;
else if(cc=='o')a[i][j]=-1;
else if(cc=='s')
{
sx=i;sy=j;a[i][j]=2;
}
else if(cc=='m')
{
ex=i;ey=j;a[i][j]=2;
}
}
}
int k=bfs();
k<t?printf("%d",k):printf("55555");//当k=t,则判断为未到!!因为这个WA了两次。。。
}
TYVJ 1117 BFS的更多相关文章
- TYVJ P3522 &&洛谷 P1135 奇怪的电梯 Label:bfs
题目描述 呵呵,有一天我做了一个梦,梦见了一种很奇怪的电梯.大楼的每一层楼都可以停电梯,而且第i层楼(1<=i<=N)上有一个数字Ki(0<=Ki<=N).电梯只有四个按钮:开 ...
- TYVJ P1083 分糖果 Label:bfs
描述 童年的我们,将和朋友分享美好的事物作为自己的快乐.这天,C小朋友得到了Plenty of candies,将要把这些糖果分给要好的朋友们.已知糖果从一个人传给另一个人需要1 秒的时间,同一个小朋 ...
- tyvj P1431 [Tyvj Jan]分配任务(最大流)
P1431 [Tyvj Jan]分配任务 时间: 1000ms / 空间: 131072KiB / Java类名: Main 描述 随着tyvj发展越来越大,管理员的任务越来越重,如何合理的 ...
- tyvj 1004 滑雪 记忆化搜索
滑雪 Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://www.tyvj.cn/p/1004 Description trs喜欢滑雪.他来 ...
- tyvj 1031 热浪 最短路
热浪 Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://tyvj.cn/p/1031 Description 德克萨斯纯朴的民眾们这个夏天正在遭受 ...
- TYVJ P1577 泥泞的道路
题目链接:http://www.tyvj.cn/p/1577# P1577 泥泞的道路 时间: 1000ms / 空间: 131072KiB / Java类名: Main 描述 公园中有n个景点,编号 ...
- 图的遍历(搜索)算法(深度优先算法DFS和广度优先算法BFS)
图的遍历的定义: 从图的某个顶点出发访问遍图中所有顶点,且每个顶点仅被访问一次.(连通图与非连通图) 深度优先遍历(DFS): 1.访问指定的起始顶点: 2.若当前访问的顶点的邻接顶点有未被访问的,则 ...
- 【BZOJ-1656】The Grove 树木 BFS + 射线法
1656: [Usaco2006 Jan] The Grove 树木 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 186 Solved: 118[Su ...
- POJ 3278 Catch That Cow(bfs)
传送门 Catch That Cow Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 80273 Accepted: 25 ...
随机推荐
- ROS笔记——创建简单的主题发布节点和主题订阅节点
在安装好ROS后,接着学习如何创建节点和节点之间的通信方式,以一个简单的主题发布节点和主题订阅节点说明. 节点是连接ROS网络等可执行文件,是实现某些功能的软件包,也是一个主要计算执行的进程. 一.创 ...
- 用JQuery Validate框架,在IE8下验证报错问题解决
网站后台用了JQuery Validate框架,版本是jQuery Validation Plugin 1.8.1 因为用的时间比较久了,一直没有更新新版本. 最近公司信息录入员有调整,没有IE11浏 ...
- 利用反射模拟一个spring的内部工作原理
这个简单的案例是实行了登录和注册的功能,没有链接数据库. 在bean中id 是唯一的,id和name的区别在于id不能用特殊字符而name可以用特殊字符,比如:/-\.... package com ...
- svn出现版本冲突之后的 无效路径
.csproj.FileListAbsolute.txt 找到之后删掉错误的代码
- spark-sql性能测试
一,测试环境 1) 硬件环境完全相同: 包括:cpu/内存/网络/磁盘Io/机器数量等 2)软件环境: 相同数据 ...
- 基于WWF搭建的通用审批流程
月明星稀,却不见明月:蛾儿雪柳暗香飘过,纵使回首千百回,却不知,心已灭:壮志未酬,却落得个多情应该笑我:扬帆起航,却不知,帆已破.这是我刚离职时的心情,曾几何时,真的想呆在一家公司,做一名优秀的技术管 ...
- asp.net初识
请求=========处理=============响应 不是服务器读网页.表单,而是我们向服务器提交数据 1.asp.net 服务器端控件是ASP.NET对HTML的封装,ASP.NET会将服务器端 ...
- hard
硬盘电路板将信号转化为电压高低,电压控制电脉冲被送到磁头,产生一个电磁.磁盘和磁头很紧密.读写都是不断扫描磁盘的过程.有操作系统负责控制文件的组织,可能在不同的块中.
- WebGL中添加天空盒的两种方法
天空盒 的添加可以让模型所在的场景非常漂亮,而其原理也是非常简单的,相信看完下面代码就可以明白了. 说到天空盒的两种方法,倒不如说是两种写法,分别用了纹理加载的两个方法:loadTexture和loa ...
- C#读取大文本文件
今天偶遇一同事抱怨,sqlserver导出的CSV,明明有1000W条,但用excel打开就只剩100W了,足足消失了90%,所以她怀疑文件是足量的1000W条,是excel捣了鬼.可是文件容量有2G ...