Catch That Cow
来源:互联网 发布:windows snmp 编辑:程序博客网 时间:2024/05/22 13:12
Problem Description
Farmer 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?
Input
Line 1: Two space-separated integers: N and K
Output
Line 1: The least amount of time, in minutes, it takes for Farmer John to catch the fugitive cow.
Sample Input
5 17
Sample Output
4
Hint
The 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.
思路:BFS模板题,直接套用模板即可,看代码。
#include<stdio.h>struct note{ int x; int s;}que[100000];int book[100000];int main(){ int i,head,tail,flag,tx,n,k; int next[2]={1,-1}; while(scanf("%d%d",&n,&k)!=EOF) { for(i=0;i<100000;i++) book[i]=0; head=1; tail=1; que[tail].x=n; que[tail].s=0; tail++; flag=0; book[n]=1; if(n!=k) { while(head<tail) { for(i=0;i<3;i++) { if(i<2) tx=que[head].x+next[i]; else tx=que[head].x*2; if(tx<0||tx>100000) continue; if(book[tx]==0) { book[tx]=1; que[tail].x=tx; que[tail].s=que[head].s+1; tail++; } if(tx==k) { flag=1; break; } } if(flag==1) break; head++; } printf("%d\n",que[tail-1].s); } else printf("0\n"); } return 0;}
- POJ3278 Catch That Cow
- Catch That Cow
- Catch That Cow
- poj3278 Catch That Cow
- 3278. Catch That Cow
- 【HDU2717】-Catch that cow
- Catch That Cow
- F - Catch That Cow
- poj3278 - Catch That Cow
- HDOJ Catch That Cow
- 2717Catch That Cow
- POJ3278 Catch That Cow
- 3278Catch That Cow
- Catch That Cow(bfs)
- Catch that cow (H2717)
- POJ3278--Catch That Cow
- Catch That Cow
- Catch That Cow+BFS
- InterlliJ IDEA编写带有命令行参数的Java程序
- Unity3D 学习笔记7 —— 获取热更新资源文件的MD5码
- android 面试经典(5)
- 10021---Compose and Model the Merchandise Shop
- OC中的委托实例
- Catch That Cow
- 扩展型模式之Visitor(访问者)模式
- 辉光特效
- bzoj3930【CQOI2015】选数
- Java中的hashCode二
- Bencode的编码与解码
- 解决pip install 时locale.Error: unsupported locale setting
- android面试经典(6)
- c++作业3