当前位置: 首页 > news >正文

唐山网站建设公司印刷厂网站建设

唐山网站建设公司,印刷厂网站建设,百度联盟个人怎么接广告,h5设计制作是什么在一个长度为n的坐标轴上,小S想从A点移动B点。 他的移动规则如下: 向前一步,坐标增加1。 向后一步,坐标减少1。 跳跃一步,使得坐标乘2。 小S不能移动到坐标小于0或大于n的位置。 小S想知道从A点移动到B点的最少步数是多…

在一个长度为n的坐标轴上,小S想从A点移动B点。

他的移动规则如下:

向前一步,坐标增加1。

向后一步,坐标减少1。

跳跃一步,使得坐标乘2。

小S不能移动到坐标小于0或大于n的位置。

小S想知道从A点移动到B点的最少步数是多少,你能帮他计算出来么?

输入格式

第一行输入三个整数n,A,B,分别代表坐标轴长度,起始点坐标,终点坐标。(0<=A,B<=n<=50000)

输出格式

输出一个整数占一行,代表小S要走的最少步数。

样例输入

10 2 7

样例输出

3

dfs深度优先(时间复杂度会比较高,这里仅供理解题目)

#include<iostream>
using namespace std;
const int N=50005;
bool st[N];
int n,A,B;
int ans;
void dfs(int x,int step){if(x==B){//结束条件 ans=step;return;}int y;//向前走,坐标+1y=x+1;if(!st[y]&&y>=1&&y<=n){st[y]=true;dfs(y,step+1);st[y]=false;}//向后走,坐标-1y=x-1;if(!st[y]&&y>=1&&y<=n){st[y]=true;dfs(y,step+1);st[y]=false;}//跳跃,坐标*2 y=x*2;if(!st[y]&&y>=1&&y<=n){st[y]=true;dfs(y,step+1);st[y]=false;}
}
int main(){cin>>n>>A>>B;dfs(A,0);cout<<ans<<endl;return 0;
}

bfs广度优先

 

#include<iostream>
#include<queue>
using namespace std;
const int N=50005;
bool st[N];
typedef struct point{int x;int step;
}point;
queue<point> q;
int n,A,B;void bfs(){while(q.size()){point p=q.front();if(p.x==B){break;}point next;int a;//向前走,坐标+1 a=p.x+1;if(!st[a]&&a>=1&&a<=n){next.x=a;next.step=p.step+1;q.push(next);//入队st[a]=true; }//向后走,坐标-1 a=p.x-1;if(!st[a]&&a>=1&&a<=n){next.x=a;next.step=p.step+1;q.push(next);//入队st[a]=true; }//跳跃,坐标*2 a=p.x*2;if(!st[a]&&a>=1&&a<=n){next.x=a;next.step=p.step+1;q.push(next);//入队st[a]=true; }q.pop(); }
}
int main(){cin>>n>>A>>B;point start;start.x=A;start.step=0;q.push(start);bfs();cout<<q.front().step<<endl;return 0;
} 

 

http://www.yayakq.cn/news/569297/

相关文章:

  • 门户网站盈利模式番禺网站建设优化
  • 设计师做单页的网站生态城门户网站 建设动态
  • 长春火车站防疫要求营销型网站建设的特点表现
  • 济南建站优化购物网站html代码
  • 可以做英文教师的网站怎么建设在线视频网站
  • 地产网站模板平面设计培训班要学多久
  • 部门网站建设管理青岛网站建设免费
  • 旅游网站开发背景意义广州做大型网站建设
  • 坪山模板网站建设公司重庆模板网站建设费用
  • 网站推广的主流方法微信公众平台小程序入口
  • 泰安网站优化公司导购网站开发要多少钱
  • 我是做环保类产品注册哪些浏览量大的网站推销自己的产品比较好呢电影资源下载wordpress
  • .net 网站模板下载地址建设网站如何写文案
  • 做网站维护的人叫啥微信小程序开发平台入口
  • 商丘做网站优化的公司有哪些公众号开发教程零基础
  • 静态网站案例站长工具ip地址
  • 在湖南建设人力资源网站建设商城网站的书籍钱
  • 网站续费自己做动感地带青春卡
  • 怎么上传视频到公司网站如何做网站大图片
  • 求一个好用的网站wordpress花园月亮
  • 网站悬浮窗口大学生帮别人做网站
  • 如何给别人做网站赚钱网络建站平台
  • 网站建设 项目经验网站什么开发
  • 怎么做好网站开发_设计字节跳动现有员工人数
  • 网站开发要学什么语言上杭网站定制
  • 网站做好后怎么更新内容黄埔网站建设哪家好
  • 安溪县住房和城乡建设网站佛山大沥网站建设
  • 手机网站适配代码搜索引擎搜不到网站
  • 网站建设公司天强科技建设部网站 专业评估
  • 网站QQ互联教程网站建设教育平台