当前位置:网站首页>Poj3278 catch the cow
Poj3278 catch the cow
2022-07-24 08:03:00 【bj_ hacker】
POJ3278 Catch the cow
subject
link
http://poj.org/problem?id=3278
Literal description
Catch That Cow
Time Limit: 2000MS Memory Limit: 65536K
Total Submissions: 201124 Accepted: 61178
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.
Source
USACO 2007 Open Silver
Code implementation
It is recommended to use BFS, Large amount of data DFS Overtime
#include<cstdio>
#include<string.h>
using namespace std;
const int maxn=1e5+10;
int n,k;
int dis[maxn],que[maxn];
bool vis[maxn];
inline bool inbound(int x){
return x>=0&&x<=100000;}
int main(){
scanf("%d%d",&n,&k);
int head=0,tail=0;
que[tail++]=n;
vis[n]=true;
while(head<tail){
int x=que[head++];
if(x==k)break;
if(inbound(x+1)&&!vis[x+1]){
que[tail++]=x+1;
vis[x+1]=true;
dis[x+1]=dis[x]+1;
}
if(inbound(x-1)&&!vis[x-1]){
que[tail++]=x-1;
vis[x-1]=true;
dis[x-1]=dis[x]+1;
}
if(inbound(2*x)&&!vis[2*x]){
que[tail++]=2*x;
vis[2*x]=true;
dis[2*x]=dis[x]+1;
}
}
printf("%d\n",dis[k]);
return 0;
}
边栏推荐
- Install librosa using Tsinghua image
- The difference between session and cookie
- Introduction to webmethods
- News topic classification task -- tochtext library for text classification
- 13. Unity2d horizontal version of two-way platform that can move up, down, left and right (two-way walking + movable + independent judgment) + random platform generation
- 1005. Maximized array sum after K negations
- Basic operation of queue
- rbm 对比散度
- Do you know the use of string?
- [Huawei] Huawei machine test question-105
猜你喜欢

OpenGL camera and periodic review

Facing Tencent (actual combat) - Test Development - detailed explanation of interns (face experience)

Debug No1 summarizes common solutions to bugs

MS SQL Server 2019 学习

2021-06-03pip error valueerror: unable to find resource t64.exe in package pip_ vendor.distlib

Thesis reading: geotransformer

About the solution of thinking that you download torch as a GPU version, but the result is really a CPU version

As skillfully uses idea annotation to improve collaboration / development efficiency

Do you want to have a robot that can make cartoon avatars in three steps?
![[matlab] (IV) application of MATLAB in linear algebra](/img/c8/97fddb4105008990173247b1b4a155.png)
[matlab] (IV) application of MATLAB in linear algebra
随机推荐
mysql使用explain分析sql执行计划帮助查找性能瓶颈
Hcip day 7
P1135 奇怪的电梯题解
Debug No4 use renderdoc to troubleshoot bugs
Implement a queue with two stacks.
避坑,职场远离PUA,PUA常见的套路与话术你得了解一下!
nacos报错: ERROR Nacos failed to start, please see D:\nacos\logs\nacos.log for more details.
13. Unity2d horizontal version of two-way platform that can move up, down, left and right (two-way walking + movable + independent judgment) + random platform generation
Appium doctor command error pit - resolved
[Beijiao] image processing: basic concepts, image enhancement, morphological processing, image segmentation
Tools for data visualization
Multiple optimization methods print prime numbers between 100 and 200
Anaconda cannot shut down the method of forced shutdown
Opencv project - credit card recognition (learning record)
(dkby) DFL learning notes
多种优化方法打印100~200之间的素数
Case practice - panoramic image mosaic: feature matching method
Jetson AgX Orin source change
Hcip day 9 notes
Basic operation of queue