搜索专题 G
来源:互联网 发布:网络恐怖主义的成因 编辑:程序博客网 时间:2024/05/30 04:15
1、简单描述
人在m点,牛在k点,人去追牛,可以一次前进一步,可以一次后退一步,可以一次到达当前点数的二倍处。每走一步花费一秒,最小多长时间追到牛?
2、思路
#include<iostream>
#include<algorithm>
#include<queue>
using namespace std;
int M,K;
queue <int> q;
int ret[100001];
bool vis[100001];
int bfs(int m,int k)
{
if(m==k)return 0;
q.push(m);
int cur;
while(!q.empty())
{
cur=q.front();
q.pop();
if(cur+1<100001&&!vis[cur+1])
{
q.push(cur+1);
ret[cur+1]=ret[cur]+1;
vis[cur+1]=true;
}
if(cur+1==k)break;
if(cur-1>=0&&!vis[cur-1])
{
q.push(cur-1);
ret[cur-1]=ret[cur]+1;
vis[cur-1]=true;
}
if(cur-1==k)break;
if(cur*2<100001&&!vis[cur*2])
{
q.push(cur*2);
ret[cur*2]=ret[cur]+1;
vis[cur*2]=true;
}
if(cur*2==k) break;
}
return ret[k];
}
int main()
{
cin>>M>>K;
cout<<bfs(M,K)<<endl;
return 0;
}
bfs,从当前点开始搜索,到达可从该点到达的点,再将这些点放入队列,再进行搜索。判断节点是否为终点,标记该点是否访问过。
- 搜索专题 G
- 【搜索入门专题1】hdu1548 G
- CDOJ 训练搜索专题G 八数码固定终点问题
- [kuangbin带你飞]专题一 简单搜索 G POJ3087
- [kuangbin带你飞]专题一 简单搜索 -G
- [kuangbin带你飞]专题一 简单搜索 G
- [kuangbin带你飞]专题二 搜索进阶 G
- [kuangbin带你飞]专题1 简单搜索 G
- 搜索专题
- 搜索专题
- 搜索专题
- 搜索专题
- [kuangbin带你飞]专题一 简单搜索G - Shuffle'm Up(POJ 3087)
- [kuangbin带你飞]专题一 简单搜索 G - Shuffle'm Up poj 3087
- [kuangbin带你飞]专题一 简单搜索 -G - Shuffle'm Up
- 搜索 G
- 搜索--G
- 搜索 G
- codedev-1229数字游戏
- 一些常用的html5特性
- sublime的QuickXDev插件不能runwithplayer或无法准确定位跳转查看源码
- 35 个 Java 代码性能优化总结
- 专访知乎张伟:RFC技术评审机制如何助力知乎实现工程文化落地
- 搜索专题 G
- flex地图开发的跨域问题
- springboot(十一):Spring boot中mongodb的使用
- vue2.0使用(2)
- 计算:RenderScript
- 软件测试的分类——按测试阶段分类
- java类的成员初始化顺序和初始化块知识
- MVC5 + EF6 入门完整教程 四
- ubuntu下安装QT5.7.1