博客
关于我
1541 +1 *2 ²
阅读量:284 次
发布时间:2019-03-03

本文共 681 字,大约阅读时间需要 2 分钟。



#include <iostream>

#include <queue>
using namespace std;

queue<int> q1;

int m, n;
int used[10001] = {0};
int step[10001];

int bfs();
int moveto(int u, int dire);


int main()
{
 int num ;
 
 cin >> m >> n ;
 
 q1.push(m) ;
 used[m] = 1 ;
 step[m] = 0 ;

 
    num = bfs();
    cout << num << endl ;
}
int bfs()
{
 int u , v , i ;
 while (!q1.empty())
 {
   u = q1.front() ;
   q1.pop() ;
   for (i = 0 ; i < 3 ; i++)
   {
    v = moveto (u , i) ;
    
     if(v == n)
     {
      return (step[u] + 1) ;
     }
     if(v <= n && used[v] == 0)
     {
      q1.push(v);
      used[v] = 1 ;
      step[v] = step[u] + 1 ;
     }
    
   }
 }
}
int moveto(int u , int dire)
{

 if(dire == 0)
 {
     return (u + 1) ;
 }
 else if(dire == 1)
 {
  return (u * 2) ;
 }
 else if(dire == 2)
 {
  return (u * u);
 }
}

转载地址:http://dcml.baihongyu.com/

你可能感兴趣的文章
一个面试大牛的经历
查看>>
浮点数在内存中的存储
查看>>
扫雷小游戏——简单易懂
查看>>
将ip地址用整形保存
查看>>
软件架构-zookeeper快速入门
查看>>
软件架构-zookeeper场景和实现
查看>>
自己的利益靠自己争取,开发就是这么坑!
查看>>
「初级篇」跟我一起学docker(四)--容器的基本操作
查看>>
22 岁毕业做程序员的「普通」人,50 岁时的人生轨迹是怎样的?
查看>>
『中级篇』Docker-Stack部署投票应用(50)
查看>>
『高级篇』docker之安全认证kubernetes命令熟悉(40)
查看>>
「docker实战篇」python的docker-抖音web端数据抓取(19)
查看>>
「小程序JAVA实战」小程序和后台api通信(28)
查看>>
scala上界与下界、协变与逆变
查看>>
java稀疏数组
查看>>
springboot解决前后端交互跨域问题
查看>>
宝马、沃尔沃、奇瑞纷纷布局,区块链将颠覆汽车行业?
查看>>
全球数字货币加快研发
查看>>
数字化助力金融科技,实现产业良性循环
查看>>
2020-11-18(失败的一天)
查看>>