A广搜
来源:互联网 发布:稳是什么意思网络词语 编辑:程序博客网 时间:2024/05/01 02:16
<span style="color:#330099;">/*A - 广搜 基础Time Limit:2000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64uSubmit StatusDescriptionFarmer John has been informed of the location of a fugitive cow and wants to catch her immediately. He starts at a point N (0 ≤ N ≤ 100,000) on a number line and the cow is at a point K (0 ≤ K ≤ 100,000) on the same number line. Farmer John has two modes of transportation: walking and teleporting.* Walking: FJ can move from any point X to the points X - 1 or X + 1 in a single minute* Teleporting: FJ can move from any point X to the point 2 × X in a single minute.If the cow, unaware of its pursuit, does not move at all, how long does it take for Farmer John to retrieve it?InputLine 1: Two space-separated integers: N and KOutputLine 1: The least amount of time, in minutes, it takes for Farmer John to catch the fugitive cow.Sample Input5 17Sample Output4HintThe fastest way for Farmer John to reach the fugitive cow is to move along the following path: 5-10-9-18-17, which takes 4 minutes.By Grant Yuan2014.7.13*/#include<iostream>#include<stdio.h>#include<string.h>#include<queue>#include<cstdio>using namespace std;bool a[100003];typedef struct{ int num; int sum;}dd;queue<dd>q;int n,k;int res;void slove(){int m,count; int x; dd init; while(!q.empty()){ if(q.front().num==n) { res=q.front().sum; break; } m=q.front().num; count=q.front().sum; x=m-1; if(a[x]==0) { init.num=x; init.sum=count+1; q.push(init); a[x]=1; } x=m+1; if(a[x]==0) { init.num=x; init.sum=count+1; q.push(init); a[x]=1; } if(m%2==0){ x=m/2; if(a[x]==0) { init.num=x; init.sum=count+1; q.push(init); a[x]=1; }} q.pop();}}int main(){ scanf("%d%d",&n,&k); memset(a,0,sizeof(a)); dd init; init.num=k; init.sum=0; a[k]=1; q.push(init); slove(); cout<<res<<endl; return 0;}</span>
0 0
- A广搜
- A - 广搜 基础
- A计划(广搜)
- hdu2102 A计划 广搜
- Find a way+二次广搜
- A strange lift 1548 广搜
- hdu 2612 Find a way (广搜)
- HDU 1548 A strange lift【广搜】
- hdu Find a way(广搜)
- 7.12 POJ 3278 A - 广搜 基础
- HDU1548-A strange lift【广搜做法】
- HDOJ-2102 A计划(广搜)
- hdoj2120 A计划 (广搜)
- HDU 2102 A计划【BFS广搜】
- hdu2612 Find a way 广搜
- 4.2.4--广搜--A strange lift
- codeforces 377A Maze(广搜)
- ZOJ 1103 Hike on a Graph(POJ 2415) (广搜)
- 生活篇Chapter1 - 小程序员的反省和感悟,新起点,新旅程。
- PHP 递归原理
- 关于java中自带的加密
- Android 全屏就一个EditText
- 配置Ubuntu开发环境
- A广搜
- 我的个人作品集地址
- Windows平台安装最新OpenCV-2.4.9,利用Eclipse、MinGW构建C++调用OpenCV开发环境
- Android Thread 与 Handler 的关系
- ubuntu 优化
- Java继承的基本概念及其限制
- 常见希腊字母及其读音
- Java中extends 与 implement 区别
- PyQt教程 - pythonQt的安装和配置及版本间差异