HDU2717BFS
/*
WA了12发简直不能忍! 。 题意非常简单。从正整数a变为b有三种方法:
+1,-1。*2 特殊情况一:a与b相等不须要搜索
特殊情况二:a>b时。结果必定是a-b不需搜
特殊情况三:比較坑! 。! 当 a 与 b 区别较大的时候。若一直依照三种方法产生子节点的话,
不断不断不断不断不断*2*2*2*2*2是非常easy超过数组长度的
并且当不断*2超过k之后,再次产生的新节点并没有意义。所以产生*2类型的新节点时要加推断条件 希望自己可以长记性
大家也能一起加油
*/ #include <iostream>
#include <cstdio>
#include <string>
using namespace std; #define MAXN 200000 int main()
{
int que[MAXN];
int book[MAXN];
int i,j,k,m,n,head,tail,new_pos;
while(cin>>n>>k)
{
memset(book,0,sizeof(book));
if (n==k)
{
printf("0\n");
continue;
}
if (n>k)
{
printf("%d\n",n-k);
continue;
}
head=tail=1;
que[head]=n;
while(!book[k]&&head<=tail)
{
new_pos=que[head]+1;
if (!book[new_pos])
que[++tail]=new_pos,book[new_pos]=book[que[head]]+1;
new_pos=que[head]-1;
if (!book[new_pos])
que[++tail]=new_pos,book[new_pos]=book[que[head]]+1;
new_pos=que[head]*2;
if (!book[new_pos]&&new_pos<=2*k)//这句话的后半句是精髓,试了非常多非常多次。
que[++tail]=new_pos,book[new_pos]=book[que[head]]+1;
head++;
}
cout<<book[k]<<endl;
}
return 0;
}
HDU2717BFS的更多相关文章
随机推荐
- js在IE8+兼容String没有trim方法,写一个兼容ie8一下的浏览器的trim()方法
方法一: String.prototype.trim = function(){ return Trim(this);}; function LTrim(str) { var i; fo ...
- Filter详解
转自 http://blog.csdn.net/yudaoai/article/details/4231333 filter功能.它使用户可以改变一个 request和修改一个response. Fi ...
- axel命令 文件下载
axel是Linux下一个不错的HTTP/ftp高速下载工具.支持多线程下载.断点续传,且可以从多个地址或者从一个地址的多个连接来下载同一个文件.适合网速不给力时多线程下载提高下载速度.比如在国内VP ...
- jquery 替换原来的html内容
1.replaceWith() 使用括号内的内容替换所选择的内容. $("#div").replaceWith("<div id="div2"& ...
- [转]SQL Server 2012 的 T-SQL 新功能 – 新的数据分析函数(LEAD、LAG)
当您需要在 SQL Server 中利用 T-SQL 比较结果集的每一列跟前一列或后一列的差异时,在过去可能需要利用 CURSOR 搭配临时表变量,或是透过递归 CTE 来达到这个效果,如今 SQL ...
- HOW TO:使用 Visual C# .NET 打印 RichTextBox 控件的内容
概要 本分步指南介绍了如何打印 RichTextBox 控件的内容.RichTextBox 控件没有提供任何打印 RichTextBox 内容的方法.您可以扩展 RichTextBox 类以使用 EM ...
- 起来吧!不要做奴隶的ITproject师们!
本文转自林忠信的博客: http://davylin.blog.163.com/blog/static/8138791201441465328380/ 起来吧! 不要做奴隶的ITproject师们! ...
- Spring 网路搜集的情报
Spring Validate http://haohaoxuexi.iteye.com/blog/1812584
- 信号值大于-75dBm时
dBm是一个表示功率绝对值的值,是以1mw为0dbm,公式dbm=10×lg(毫瓦数/1).所以,为负值 这个值越大,表示信号越好,如-70dbm信号比-90dbm好 信号值大于-75dBm时,说明 ...
- 上手并过渡到PHP7(3)——Uniform Variable Syntax到底统一了什么
PHP7 up and running 泊学原文链接泊学实操视频 Uniform Variable Syntax 在PHP 7提出Uniform Variable Syntax之前,我们大多数人可能都 ...