#include<cstdio>
#include<cstring>
#include<cstdlib>
#include <iostream>
#include <algorithm>
#include <queue>
#define m 100005
using namespace std;

queue<int> q;//用队列做广搜

bool vis[m];//用于标记路是否走过

int step[m];//记录时间

int bfs( int n, int k)
{
    int head, next;// 头和下一个情况
    q.push(n);
    vis[n] = true;
    step[n] = 0;
    while (!q.empty())
    {
        head = q.front();
        q.pop();
        for (int i = 0; i < 3; i++)
        {
            if (i == 0)
                next = head - 1;
            else if (i == 1)
                next = head + 1;
            else
                next = head * 2;
            if (next < 0 || next > m||vis[next])
                continue;
            if (!vis[next])
            {
                q.push(next);
                step[next] = step[head] + 1;
                vis[next] = true;
            }
            //printf("%d %d\n",next,step[next]);
            if (next == k) return step[next];
        }

}
}

int main()
{
    int n, k;
    cin>>n>>k;
    if (n>=k)
    {
        cout<<n-k<<endl;
    }
    else
    {
        cout<<bfs(n,k)<<endl;
    }
    return 0;
}

第一道bfs,撸了一晚上相关推荐

  1. MFZ 杯 のDFS BFS总结

    新学了dps和bfs,, 这算是第一次实战, 挖出了不少的诡异的错误,,这里小结一下题目,, 等会再给一些题写个详细题解 再写个bfs,dfs总结 第一题:A - Red and Black 这题是我 ...

  2. POJ 3278 Catch That Cow(BFS)

    题目网址:http://poj.org/problem?id=3278 题目: Catch That Cow Time Limit: 2000MS   Memory Limit: 65536K Tot ...

  3. 【HDU - 1254 】推箱子 (双bfs)

    题干: 推箱子是一个很经典的游戏.今天我们来玩一个简单版本.在一个M*N的房间里有一个箱子和一个搬运工,搬运工的工作就是把箱子推到指定的位置,注意,搬运工只能推箱子而不能拉箱子,因此如果箱子被推到一个 ...

  4. 习题6-5巡逻机器人 UVa 1600 bfs

    题目:点击打开链接 分析:一道bfs题,由于到达一点需要判断经过了几个障碍,所以在vis数组中需要加上一维来表示经过的障碍物,因为到达一点的可行路径是不同的,如果单纯的用vis[x][y],来表示点的 ...

  5. poj-2251 Dungeon Master【bfs】

    很基础的一道bfs /*这题是一个三维的迷宫题目,其中用'.'表示空地,'#'表示障碍物,'S'表示起点,'E'表示终点, 求从起点到终点的最小移动次数,解法和二维的类似, 只是在行动时除了东南西北移 ...

  6. HDU 2977 Color Squares BFS

    题目描述: Problem Description You have a 3 * 3 board of color squares. Each square is either empty or ha ...

  7. 【BFS】马的覆盖点

    Description 中国象棋是起源于中国的一种棋戏,属于二人对抗性游戏的一种,在中国有着悠久的历史.由于用具简单,趣味性强,成为流行极为广泛的棋艺活动. 这一天小信迷上了中国象棋,在和一个大师的巅 ...

  8. CF_329_B----AcWing_3825_逃离大森林(BFS究极模板)

    原题链接:https://www.acwing.com/problem/content/3828/ 你是一个宝可梦饲养员,你正在进行你的冒险之旅. 当前,你的目标是逃离飞鸟森林. 飞鸟森林可以表示为一 ...

  9. 《巫妖王的远征》(bfs板子题)

    下午要打工作室例赛,会考察搜索内容,搜索本来也忘得差不多了,于是想找点题练练手,正好昨天xbl在补很早之前牛客上的一道bfs题,于是今天写了一下.. 题目链接:传送门 "他的邪恶乃是一个传奇 ...

最新文章

  1. 2018年度自动机器学习框架盘点
  2. UA MATH567 高维统计I 概率不等式7 亚指数性与亚指数分布
  3. 使用 wxImage 为 OpenGL 加载纹理
  4. linux设置基础软件仓库时,安装centos系统时设置基础软件仓库出错
  5. $python数据分析基础——初识numpy库
  6. cogs 167. [USACO Mar07] 月度花费
  7. (35)FPGA面试技能提升篇(AD、DA、时钟芯片)
  8. android 仿搜索动画,Android仿京东顶部搜索框滑动伸缩动画效果
  9. 纽微特反省:经常跑同一个客户,也没新东西看
  10. 王道计算机网络 电子版,2021王道.考研复习指导.数据结构.操作系统.计算机组成原理.计算机网络.计算机考研PDF电子版无水印图...
  11. Spring框架基础(上)
  12. Mac Sublime Text安装可以使xml格式化的插件
  13. 打包签名用 文件配置遇到的坑(Keystore was tampered with, or password was incorrect)
  14. 一个创业者的心理独白,是美妆溪妍给了我希望
  15. VScode 插件中 package.json 文件字段详解
  16. java比较两个json文件的差异
  17. python3 (学习第一天)
  18. OCAD应用:二组元连续变焦系统
  19. 永磁同步电机矢量控制基础补充(一)——如何绘制电机输出的磁链
  20. 小米的html查看器怎么保存密码,毕业论文格式模板word_大专毕业论文5000字

热门文章

  1. 微信小程序RSA非对称加密。
  2. Opencv图像处理——水平线和垂直线的提取
  3. 主机一键巡检脚本--基于python实现
  4. python的turtle画小人_利用Python如何画一颗心、小人发射爱心
  5. 腾讯 纸牌游戏 (排序)
  6. ubuntu状态栏消失
  7. 对random.seed()函数的理解
  8. OpenCV—直线拟合fitLine
  9. 支付宝密钥及文件生成方式
  10. IS-IS LSDB详解(华为设备)