HDU2717 Catch That Cow(bfs)
题意:农夫的牛跑了,给出农夫和牛在坐标轴上的位置n和k,农夫每次只能从点n移动到n-1、n+1或者n*2的位置。输出抓到牛所需要的最小移动次数。
思路:思路明显的bfs,每次搜索只按照这三种方式,标记访问过的点防止重复访问即可。
#include<bits/stdc++.h>
using namespace std;
#define INF 0x3f3f3f3f
typedef long long LL;
typedef pair<int,int> P;
const int N=1000000+5;
int g[N],n,k;
int bfs(){if(n==k)return 0;queue<int> q;q.push(n);while(q.size()){int p=q.front();q.pop();if(p-1>=0&&p-1<=1000000&&g[p-1]==-1){g[p-1]=g[p]+1;if(p-1==k)return g[p-1];q.push(p-1);}if(p+1>=0&&p+1<=1000000&&g[p+1]==-1){g[p+1]=g[p]+1;if(p+1==k)return g[p+1];q.push(p+1);}if(p*2>=0&&p*2<=1000000&&g[p*2]==-1){g[p*2]=g[p]+1;if(p*2==k)return g[p*2];q.push(p*2);}}
}
int main(){while(~scanf("%d%d",&n,&k)){memset(g,-1,sizeof(g));g[n]=0;printf("%d\n",bfs());}
}
HDU2717 Catch That Cow(bfs)相关推荐
- POJ 3278 Catch That Cow(BFS)
题目网址:http://poj.org/problem?id=3278 题目: Catch That Cow Time Limit: 2000MS Memory Limit: 65536K Tot ...
- HDU 2717 Catch That Cow(BFS)
题目链接 好裸,BFS.杭电多组..2A.. 1 #include <stdio.h> 2 #include <string.h> 3 int p[100001],o[1000 ...
- C - Catch That Cow(BFS)
找奶牛 有三种移动方式,作为BFS搜索的方向 利用 当 n > k 时只能向后走,优化结果 #include<iostream> #include<cstring> #i ...
- poj 3278 Catch That Cow (bfs)
题目:http://poj.org/problem?id=3278 题意: 给定两个整数n和k 通过 n+1或n-1 或n*2 这3种操作,使得n==k 输出最少的操作次数 1 #include< ...
- POJ3278 HDU2717 Catch That Cow【BFS】
Catch That Cow Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 100475 Accepted: 31438 ...
- POJ3278Catch That Cow(BFS)
Catch That Cow Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 70652 Accepted: 22216 ...
- HDU-2717-Catch That Cow(bfs)
Catch That Cow Problem Description Farmer John has been infor ...
- (BFS)Catch That Cow(poj3278)
题目: 农夫知道一头牛的位置,想要抓住它.农夫和牛都于数轴上 ,农夫起始位于点 N(0<=N<=100000) ,牛位于点 K(0<=K<=100000) .农夫有两种移动方式 ...
- Catch That Cow(POJ-3278)
Problem Description Farmer John has been informed of the location of a fugitive cow and wants to cat ...
最新文章
- LeetCode 850. Rectangle Area II
- 7.unity插件T4M使用
- Android Handler与Looper原理简析
- python之WEB开发:图片管理
- Boost:由内部绑定的值返回的智能指针的测试程序
- 设计模式学习之Factory Method模式和Abstract Factory模式
- SAP云平台 Document Information Extraction服务测试
- mybatis-plus 查询,删除
- thinkphp 多字段排序
- 罗永浩“卖艺”还债能成?邀约不断,币圈抢着送钱
- 5 thinkpad 黑将评测_ThinkPad L380视频评测:全能型商务助手
- 【三维路径规划】基于matlab A_star算法无人机山地三维路径规划【含Matlab源码 266期】
- 【JS】js打开新窗口与页面跳转
- 《符号学:原理与推演》引论
- jquery 实现抽奖小程序
- pt工具的使用(6) pt-table-sync的使用
- linux 命令 cups,linux cups 打印机命令说明
- TypeError: decoding str is not supported
- Cascade EF-GAN: 局部聚焦渐进式面部表情编辑
- 解读PureMVC框架
热门文章
- 移动浏览器的内核WebKit介绍
- .NET项目开发—浅谈面向对象的纵横向关系、多态入口,单元测试(项目小结)...
- AP6275S移植总结
- 如何在Ubuntu 18.04上安装ERPNext堆栈
- 安卓凯立德4.2不能运行的解决方法
- 重庆自考本科可以选择全日制吗?
- 院士李幼平:播存技术促进NGB网络建设
- 简易小说爬虫显示器的不同语言实现示例(Python-tkinter-wxpython-pyqt5-Flask,Java,C,C++,C#,Lua,Go,Kotlin,HTML,JS,VB,PHP,R)
- 华为linux可以装win7吗,华为电脑如何重装Windows7系统?
- 双系统安装ubuntu 22.04 LTS(一步到位)