题目链接:http://poj.org/problem?id=3278

#include <cstdio>
#include <queue>
#include <string.h> using namespace std; #define MAXN 200000 int key[MAXN];///走到key[i]的步数
bool vis[MAXN];///是否走过 int bfs(int first,int last)
{
int v;
queue<int>q; ///初始化没有走过
memset(vis,false,sizeof(vis)); q.push(first);
key[first]=;
vis[first]=true; while(!q.empty())
{
v=q.front(); q.pop(); if(v==last)
return key[v]; ///向左走
if((v-)>=&&(v-)<MAXN&&!vis[v-])
{
key[v-]=key[v]+;
vis[v-]=true;
q.push(v-);
} ///向右走
if((v+)>=&&(v+)<MAXN&&!vis[v+])
{
key[v+]=key[v]+;
vis[v+]=true;
q.push(v+);
} ///跳
if((v*)>=&&(v*)<MAXN&&!vis[v*])
{
key[v*]=key[v]+;
vis[v*]=true;
q.push(v*);
}
}
} int main()
{
int n,k;
while(scanf("%d%d",&n,&k)!=EOF)
{
printf("%d\n",bfs(n,k));
}
return ;
}

最新文章

  1. [LeetCode] Implement Queue using Stacks 用栈来实现队列
  2. JAVA教师:给JAVA初学者的忠告
  3. Topcoder SRM 618 Div2 --900
  4. js:判断对象是否为空
  5. 多表利用DIH批量导入数据并建立索引注意事项
  6. linux内核--进程与线程
  7. PHP读书笔记(7)- 函数
  8. stl map高效遍历删除的方法
  9. Protobuf-net学习笔记
  10. thinkphp 行为扩展
  11. Angularjs跳转切换至对应选项卡
  12. 初始化HTML样式(转载)
  13. [转]phpredis中文手册
  14. 解决centos中vsftpd中文乱码
  15. System.ServiceModel.AddressAccessDeniedException
  16. C# ASP.NET MVC 配置允许跨域访问
  17. SPSS-回归分析
  18. SQL 进阶视频课程。Udacity: Intro to Relational Databases和 PostgreSQL语法文档。
  19. pca总结,非常详细
  20. 常用 php server

热门文章

  1. python模块之openpyxl扩展
  2. 学习Laravel遇到的问题纪录
  3. 修改Matlab打开时的默认路径
  4. Silverlight 动态创建Enum
  5. STM32F3 浮点运算使用
  6. PlayMaker 操作界面超级详细介绍
  7. Cache一致性协议之MESI
  8. BNU 27847——Cellphone Typing——————【字典树】
  9. [HZOI 2015]树黑白
  10. struts2的常量