POJ - 3278 Catch That Cow(BFS)
发布日期:2021-10-03 15:44:50
浏览次数:2
分类:技术文章
本文共 1060 字,大约阅读时间需要 3 分钟。
题目大意:给你两个坐标,你的位置是第一个坐标
现在有两种操作:操作1:前进一个单位 操作二:前进(当前位置 - 0)个单位 问到达第二个坐标的最小操作数解题思路:纯BFS裸题
#include#include #include using namespace std;const int N = 200010;struct Node { int pos, time; Node() {} Node(int pos, int time): pos(pos), time(time) {}};bool vis[N];int start, End;void solve() { queue Q; Q.push(Node(start, 0)); memset(vis, 0, sizeof(vis)); vis[start] = true; while (!Q.empty()) { int x = Q.front().pos; int t = Q.front().time; Q.pop(); if (x == End) { printf("%d\n", t); return ; } if (x + 1 <= End && !vis[x + 1]) { vis[x + 1] = true; Q.push(Node(x + 1, t + 1)); } if (x - 1 >= 0 && !vis[x - 1]) { vis[x - 1] = true; Q.push(Node(x - 1, t + 1)); } if (x * 2 < N && !vis[x * 2]) { vis[x * 2] = true; Q.push(Node(x * 2, t + 1)); } }}int main() { while (scanf("%d%d", &start, &End) != EOF) solve(); return 0;}
转载地址:https://blog.csdn.net/L123012013048/article/details/49019859 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
能坚持,总会有不一样的收获!
[***.219.124.196]2024年04月14日 18时36分26秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
MSDK手Q邀请透传参数问题:url编解码与base64编解码
2019-04-27
svn提交的一个坑
2019-04-27
eclipse识别不了模拟器解决办法
2019-04-27
unity mesh合并
2019-04-27
谈谈类之间的关联关系与依赖关系
2019-04-27
unity5.x assetbundle打包和加载
2019-04-27
C#用正则表达式去匹配被双引号包起来的中文
2019-04-27
lua table排序
2019-04-27
Unity发布的ios包在iphone上声音是从听筒里出来的问题
2019-04-27
UIScrollView复用节点示例
2019-04-27
Unity 5 AudioMixer
2019-04-27
Unity 代码混淆: CodeGuard的使用
2019-04-27
UGUI 列表循环使用
2019-04-27
使用命令行运行unity并执行某个静态函数(运用于命令行打包和批量打包)
2019-04-27
web.py框架
2019-04-27
web.py学习笔记
2019-04-27
python的代码缩进
2019-04-27
A* Pathfinding Project (Unity A*寻路插件) 使用教程
2019-04-27
bash学习笔记
2019-04-27