poj 3278 简单的搜索
来源:互联网 发布:js幻灯片切换 编辑:程序博客网 时间:2024/06/05 08:13
因为刚开始时不知道怎么储存每一层更新时步数的变化,所以纠结了好久,后来看了别人的代码才知道原来只是上层的步数+1就好,所以这题也就没什么问题了,但还是有两个只是盲点,就是bool 怎么初始化,和 怎么清空stl 队列。
#include<cstdio>#include<cstdlib>#include<iostream>#include<algorithm>#include<vector>#include<queue>#include<cstring>using namespace std;int num[200001];bool vis[200001];/*typedef struct { int x; int step;}data;*/int start, end;queue<int>Q;int bfs(int x ){ while(!Q.empty()) { int t = Q.front(); Q.pop(); if(t == end ) { printf("%d\n",num[end]); return 0; } if(t+1<200001&&!vis[t+1]) { vis[t+1] = true; Q.push(t+1); num[t+1] = num[t]+1; } if(t-1>=0&&!vis[t-1]) { vis[t-1] = true; Q.push(t-1); num[t-1] = num[t]+1; } if(t*2<200001 && !vis[t*2]) { vis[t*2] = true; Q.push(t*2); num[t*2] = num[t]+1; } }}int main(){ scanf("%d %d",&start,&end); memset(num, 0, sizeof(num)); vis[start]=true; Q.push(start); bfs(start); system("pause"); return 0;}
- poj 3278 简单的搜索
- poj 1979 简单的搜索
- poj 2488 简单的搜索
- poj 3278 简单搜索bfs
- poj 1562 简单的BFS搜索
- 简单搜索1979@POJ
- poj 3909 简单 搜索
- poj 1166 简单搜索
- poj~1321(简单搜索)
- poj-1321(简单搜索)
- poj 1321 简单搜索
- POJ 1033-Defragment 简单搜索
- poj 1033 Defragment 简单搜索
- POJ-3279(Fliptile)--简单搜索
- poj 2251 简单搜索bfs
- POJ-----1321搜索简单题
- 简单搜索poj 2243(水
- POJ 2386 Lake Counting 简单的DFS搜索
- Linux经典面试题及答案
- c++小例子代码(1)
- DOS网络命令大全
- jdk内存工具使用
- 初学Struts2
- poj 3278 简单的搜索
- WebService_Xfire_入门(图)
- malloc()和calloc()
- Linux下配置Samba实现文件共享
- [C++程序设计]如何编写高效的C++函数
- BlackBerry中文语音开发:TTS中文语音转换,语音命令
- 一个非常不错的函数设计方法——空存根
- C++程序员需要注意的11个问题
- SVN+TortoiseSVN+Subclipse使用总结