acwing 110 抓住那头牛

简介: acwing 110 抓住那头牛

活动 - AcWing

#include<iostream>
#include<algorithm>
#include<cstring>
#include<queue>
using namespace std ;
const int N = 1e5 +10 ;
queue<int> q ;
int n , m ;
int a[N*2] ;
void bfs(){
  while(!q.empty()){
    int now = q.front();
    q.pop() ;
    if(now == m) return ;
    for(int i = 0 ; i < 3 ; i++){
      if(i == 0){ 
        int u = now - 1 ;
        if(u<0||u>2 *N||a[u]!=-1) continue ;
        q.push(u) ;
        a[u] = a[now] + 1 ;
      }
      if(i == 1){
        int u = now + 1 ;
        if(u<0||u>2 *N||a[u]!=-1) continue ;
        q.push(u) ;
        a[u] = a[now] + 1 ;
      }
      if(i == 2){
        int u = now * 2 ;
        if(u<0||u>2 *N||a[u]!=-1) continue ;
        q.push(u) ;
        a[u] = a[now] + 1 ;
      }
    }
  }
}
 
int main(){
  cin >> n >> m ;
  memset(a,-1,sizeof(a)) ; 
  a[n] = 0 ;
  q.push(n) ;
  
  bfs() ;
  cout << a[m] << endl ;
} 
目录
相关文章
|
6月前
acwing 恨7不成妻
acwing 恨7不成妻
51 0
【寒假每日一题】AcWing 4455. 出行计划
目录 一、题目 1、原题链接 2、题目描述 二、解题报告 1、思路分析 2、时间复杂度 3、代码详解 三、知识风暴 差分与前缀和
116 0
|
算法 Android开发 Kotlin
LeetCode 周赛上分之旅 #42 当 LeetCode 考树上倍增,出题的趋势在变化吗
学习数据结构与算法的关键在于掌握问题背后的算法思维框架,你的思考越抽象,它能覆盖的问题域就越广,理解难度也更复杂。在这个专栏里,小彭与你分享每场 LeetCode 周赛的解题报告,一起体会上分之旅。
117 0
LeetCode 周赛上分之旅 #42 当 LeetCode 考树上倍增,出题的趋势在变化吗
|
机器人
LeetCode 双周赛 106(2023/06/10)两道思维题
往期回顾:[LeetCode 单周赛第 348 场 · 数位 DP 模版学会了吗?](https://mp.weixin.qq.com/s/4aLHpyaLOUEHSaX2X8e5FQ)
87 0
LeetCode 双周赛 106(2023/06/10)两道思维题
|
存储 算法 搜索推荐
1【百度之星】基础算法讲解—穷举、贪心(上)
1【百度之星】基础算法讲解—穷举、贪心(上)
|
存储 算法
1【百度之星】基础算法讲解—穷举、贪心(下)
1【百度之星】基础算法讲解—穷举、贪心(下)
|
机器学习/深度学习 人工智能 算法
LeetCode 周赛 345(2023/05/14)体验一题多解的算法之美
大家好,我是小彭。这场周赛是 LeetCode 第 345 场单周赛,整体难度不高,我们使用一题多解的方式强化练习。
130 0
AcWing第 96 场周赛
AcWing第 96 场周赛
186 0
|
算法 Java
acwing 第63场周赛【2022.08.06】
acwing 第63场周赛【2022.08.06】
78 0
acwing 第63场周赛【2022.08.06】
AcWing 1211. 蚂蚁感冒
AcWing 1211. 蚂蚁感冒
65 0
下一篇
无影云桌面