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 ;
} 
目录
相关文章
|
5月前
acwing 恨7不成妻
acwing 恨7不成妻
49 0
|
3月前
【蓝桥杯】[递归]母牛的故事
蓝桥杯——[递归]母牛的故事
44 1
【蓝桥杯】[递归]母牛的故事
|
4月前
【洛谷 P1002】[NOIP2002 普及组] 过河卒 题解(递归+记忆化搜索)
`NOIP2002`普及组的过河卒问题是一个棋盘路径计数挑战。卒从$(0,0)$出发到$(n,m)$,只能向下或向右移动,马在$(c1,c2)$固定,控制某些点。任务是计算不受马阻挡的路径数。输入是目标和马的位置,输出是路径总数。使用动态规划和记忆化搜索避免重复计算,样例输入$(6,6,3,3)$输出$6$。代码中定义了$f(x,y)$计算$(x,y)$处的路径数,利用边界条件和递推关系计算。
53 0
【寒假每日一题】AcWing 4455. 出行计划
目录 一、题目 1、原题链接 2、题目描述 二、解题报告 1、思路分析 2、时间复杂度 3、代码详解 三、知识风暴 差分与前缀和
111 0
|
算法 Android开发 Kotlin
LeetCode 周赛上分之旅 #42 当 LeetCode 考树上倍增,出题的趋势在变化吗
学习数据结构与算法的关键在于掌握问题背后的算法思维框架,你的思考越抽象,它能覆盖的问题域就越广,理解难度也更复杂。在这个专栏里,小彭与你分享每场 LeetCode 周赛的解题报告,一起体会上分之旅。
111 0
LeetCode 周赛上分之旅 #42 当 LeetCode 考树上倍增,出题的趋势在变化吗
|
机器人
LeetCode 双周赛 106(2023/06/10)两道思维题
往期回顾:[LeetCode 单周赛第 348 场 · 数位 DP 模版学会了吗?](https://mp.weixin.qq.com/s/4aLHpyaLOUEHSaX2X8e5FQ)
82 0
LeetCode 双周赛 106(2023/06/10)两道思维题
|
机器学习/深度学习 人工智能 算法
LeetCode 周赛 345(2023/05/14)体验一题多解的算法之美
大家好,我是小彭。这场周赛是 LeetCode 第 345 场单周赛,整体难度不高,我们使用一题多解的方式强化练习。
125 0
|
存储
【蓝桥杯集训·每日一题】AcWing 4309. 消灭老鼠
文章目录 一、题目 1、原题链接 2、题目描述 二、解题报告 1、思路分析 2、时间复杂度 3、代码详解 三、知识风暴 最大公约数
82 0
AcWing 1211. 蚂蚁感冒
AcWing 1211. 蚂蚁感冒
59 0
|
机器学习/深度学习 C++
【力扣·每日一题】1036. 逃离大迷宫 (C++ bfs 思维)
【力扣·每日一题】1036. 逃离大迷宫 (C++ bfs 思维)
93 0
【力扣·每日一题】1036. 逃离大迷宫 (C++ bfs 思维)