toj3071 BFS_模板
来源:互联网 发布:空总激光美容中心 知乎 编辑:程序博客网 时间:2024/06/05 07:56
//toj3071number game BFS--典型bfs,分别有加一减一和乘除的操作,因此用bfs先操作一下,如果成功进入队列,
最终找到最小的步骤
#include<iostream>#include<cstring>#include<memory.h>#define MAX 100000using namespace std;int main(){ int cases,k,p,flag[MAX+1],i; int step[MAX+1],x[MAX+1],tx,top; int mark; cin>>cases; while(cases--) { cin>>k>>p; memset(flag,0,sizeof(flag)); mark=0; top=1; x[0]=k; step[0]=0; for(i=0;i<top;i++) { if(x[i]==p) {cout<<step[i]<<endl;mark=1;break;} tx=x[i]*2; if(tx<MAX&&flag[tx]==0) { x[top]=tx; step[top]=step[i]+1; flag[tx]=1; top++; } if(x[i]%2==0) { tx=x[i]/2; if(tx>0&&flag[tx]==0) { x[top]=tx; step[top]=step[i]+1; flag[tx]=1; top++; } } tx=x[i]+1; if(tx<MAX&&flag[tx]==0) { x[top]=tx; step[top]=step[i]+1; flag[tx]=1; top++; } } if(mark==0)cout<<-1<<endl; } return 0; }
- toj3071 BFS_模板
- BFS_热身赛
- toj3071 Number Game
- BFS_连连看游戏
- BFS_连连看游戏
- BFS_连连看问题
- 20170815(BFS_马,BFS_穿越障碍,双指针)
- poj2245 zoj 1089 bfs_水
- Paint on a Wall----HDU_4012----BFS_状态压缩
- FZU 2150Fire Game (BFS_好题)
- BFS_连连看游戏 一个让人感觉很复杂的BFS
- 模板
- 模板?
- 模板
- 模板
- 模板
- 模板
- 模板
- 简单的Tween动画
- C/C++常用头文件及函数汇总
- Jump Game II
- c++设计模式--观察者模式
- How to think like a Computer Scientist: 课后习题第十七章4
- toj3071 BFS_模板
- 0915土豆视频之"_CGImageSourceCopyPropertiesAtIndex", referenced from:
- PHP结合JAVA的开发技术 LAJP
- 关于MotionEvent.ACTION_UP无法被响应的问题
- 乐杨俊:div实现阴影效果(适应各个浏览器)
- OGR读取GML文件
- 表连接
- From Ontology to Semantic Web
- toj2825 catch the cow BFS典型题