poj 3278 Catch That Cow
2015-06-08 13:38
309 查看
囧。。。。。一个很简单的广搜,由于边界条件没有控制好,贡献好几发wrong。。。55555,以后要注意了,这种小问题才是最恼人的。。。
点击打开链接
点击打开链接
#include<iostream> #include<cstdio> #include<string.h> #include<string> #include<queue> #include<algorithm> #define MAX 100010 using namespace std; int vis[MAX]; struct node{ int x; int step; }; int bfs(int n,int k) { queue<node>q; memset(vis,0,sizeof(vis)); vis =1; node st; st.x=n; st.step=0; q.push(st); while(!q.empty()) { node temp= q.front(); q.pop(); node cur1,cur2,cur3; cur1=cur2=cur3=temp; if(cur1.x==k) { printf("%d\n",cur1.step); } cur1.x*=2; cur1.step++; cur2.x-=1; cur2.step++; cur3.x+=1; cur3.step++; if(cur1.x>0&&cur1.x<100001&&!vis[cur1.x]) { q.push(cur1); vis[cur1.x]=1; } if(cur2.x>=0&&cur2.x<100001&&!vis[cur2.x]) { q.push(cur2); vis[cur2.x]=1; } if(cur3.x>0&&cur3.x<100001&&!vis[cur3.x]) { q.push(cur3); vis[cur3.x]=1; } } } int main() { int n,m; while(scanf("%d%d",&n,&m)!=EOF) { bfs(n,m); } return 0; }
相关文章推荐
- 我的java web登录RSA加密
- C API向MySQL插入批量数据的快速方法——关于mysql_autocommit
- HTTP请求头和响应头注释
- JS过滤url参数中的特殊字符
- Linux ./configure && make && make install 编译安装和卸载
- 赛门铁克加速NSX安全化编排,或将拥抱ACI
- SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
- 记Handler机制中的一个小点
- Ngnix 安装、信号量、虚拟主机配置
- Rectangle Area || LeetCode
- ndk入门基础demo
- OpenVSwitch简单容易入门
- jquery-validation 使用
- Android LinearLayout中TextView标签项自动换行的一种解决方案
- CVPR2014 Objectness 源码转换(完整版) VS2012 X64 –>win32
- OSG 自定义数据类型 关键帧动画
- Mega Dropdown - 带子分类的响应式下拉菜单
- Oracle索引
- Ubuntu中jdk的安装与配置
- Fibonacci Again