[USACO2007OPEN S] Catch That Cow S
题目描述
FJ丢失了他的一头牛,他决定追回他的牛。已知FJ和牛在一条直线上,初始位置分别为x和y,假定牛在原地不动。FJ的行走方式很特别:他每一次可以前进一步、后退一步或者直接走到2*x的位置。计算他至少需要几步追上他的牛。
输入格式
第一行为一个整数t(≤10),表示数据组数;接下来每行包含一个两个正整数x和y(0<x,y≤10^5),分别表示FJ和牛的坐标。
输出格式
对于每组数据,输出最少步数。
样例 #1
样例输入 #1
1
5 17
样例输出 #1
4
考虑广搜,枚举x可以走的每一步,什么时候到了y就输出答案。可以用时间戳记录是否用过没。
#include<bits/stdc++.h>
const int N=1e6+5;
int t,x,y,q[N],p[N],v[N],l,r;
int main()
{
scanf("%d",&t);
memset(v,-1,sizeof(v));
while(t--)
{
scanf("%d%d",&x,&y);
q[l=r=1]=x,v[x]=t,p[1]=0;
while(l<=r)
{
if(q[l]==y)
{
printf("%d\n",p[l]);
break;
}
if(q[l]*2<N&&v[q[l]*2]!=t)
q[++r]=q[l]*2,p[r]=p[l]+1,v[q[l]*2]=t;
if(q[l]+1<N&&v[q[l]+1]!=t)
q[++r]=q[l]+1,v[q[l]+1]=t,p[r]=p[l]+1;
if(q[l]&&v[q[l]-1]!=t)
q[++r]=q[l]-1,v[q[l]-1]=t,p[r]=p[l]+1;
++l;
}
}
return 0;
}
[USACO2007OPEN S] Catch That Cow S的更多相关文章
- POJ 3278 Catch That Cow(bfs)
传送门 Catch That Cow Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 80273 Accepted: 25 ...
- poj3278 Catch That Cow
Catch That Cow Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 73973 Accepted: 23308 ...
- catch that cow (bfs 搜索的实际应用,和图的邻接表的bfs遍历基本上一样)
Catch That Cow Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 38263 Accepted: 11891 ...
- poj 3278:Catch That Cow(简单一维广搜)
Catch That Cow Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 45648 Accepted: 14310 ...
- 2016HUAS暑假集训训练题 B - Catch That Cow
B - Catch That Cow Description Farmer John has been informed of the location of a fugitive cow and w ...
- HDU 2717 Catch That Cow (bfs)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2717 Catch That Cow Time Limit: 5000/2000 MS (Java/Ot ...
- BFS POJ 3278 Catch That Cow
题目传送门 /* BFS简单题:考虑x-1,x+1,x*2三种情况,bfs队列练练手 */ #include <cstdio> #include <iostream> #inc ...
- Catch That Cow 分类: POJ 2015-06-29 19:06 10人阅读 评论(0) 收藏
Catch That Cow Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 58072 Accepted: 18061 ...
- [HDOJ2717]Catch That Cow
Catch That Cow Time Limit: 5000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)To ...
- HDU 2717 Catch That Cow --- BFS
HDU 2717 题目大意:在x坐标上,农夫在n,牛在k.农夫每次可以移动到n-1, n+1, n*2的点.求最少到达k的步数. 思路:从起点开始,分别按x-1,x+1,2*x三个方向进行BFS,最先 ...
随机推荐
- 3、Spring之入门案例
3.1.创建module 3.1.1.右击project,创建新module 3.1.2.选择maven 3.1.3.设置module名称和路径 3.1.4.module初始状态 3.1.5.配置打包 ...
- 史上最强.NET数据分页方法
[前言] 本文讲述的.NET数据分页方法为[史上最强],已被多家大型科技公司实战采用 & 也被圈内多家知名IT培训机构转载收藏. [正文] 支持.Net Core(2.0及以上)与.Net F ...
- Mysql高阶自定义排序
Mysql高阶自定义排序 嗨,大家好,我是远码,隔三岔五给大家分享一点工作的技术总结,花费的时间不多,几分钟就行,谢谢! Mysql对我们码农来说是在熟悉不过的日常了,就不在介绍它的基础用法了,今天我 ...
- 如何实现IP话机接入交换机?
组网图形 简介 如果语音设备支持LLDP协议,并且支持通过network-policy TLV字段获取语音VLAN,可以在交换机上配置命令lldp tlv-enable med-tlv network ...
- iOS证书的使用
在iOS开发中,证书分两种,一种是对应于应用的证书,一种是通用证书
- ptp 时钟同步
转载请注明出处: PTP(Precision Time Protocol)的功能可以帮助实现网络中各个节点的时钟同步,以提供更精确的时间参考. 作用: 时钟同步:通过PTP协议,在网络中不同节点之间实 ...
- Unity 游戏开发、01 基础篇 | 阿发入门篇全课程学习笔记
Unity Documentation .全课程视频 .第15,24章视频 afanihao Unity入门,全课程内容个人学习笔记,简单部分一笔带过,重点内容带 2.3 窗口布局 Unity默认窗口 ...
- Content Security Policy(CSP)应用及说明
什么是CSP CSP全称Content Security Policy ,可以直接翻译为内容安全策略,说白了,就是为了页面内容安全而制定的一系列防护策略. 通过CSP所约束的的规责指定可信的内容来源( ...
- Scrapy官方文档爬取
最近想爬点啥东西看看, 所以接着学习了一点Scrapy, 学习过程中就试着去爬取Scrapy的官方文档作为练习之用, 现在已经基本完成了. 实现原理: 以 overview.html 为起点,通过 r ...
- Springboot简单功能示例-2 KEY初始化功能和全局错误处理
springboot-sample 介绍 springboot简单示例 跳转到发行版 查看发行版说明 软件架构(当前发行版使用) springboot hutool-all 非常好的常用java工具库 ...