首页 > 代码库 > POJ 3278 Catch That Cow
POJ 3278 Catch That Cow
#include<stdio.h>#include<iostream>#include<cstdio>#include<queue>#include<memory.h>#define maxn 100005using namespace std;queue<int> q;int step[maxn];int visit[maxn];int n,k;int head,next;int bfs(){ q.push(n); step[n]=0; visit[n]=1; while(!q.empty()) { head=q.front(); q.pop(); for(int i=0;i<3;i++) { if(i==0)next=head+1; if(i==1)next=head-1; if(i==2)next=head*2; if(next>maxn||next<0) continue; if(!visit[next]) { q.push(next); step[next]=step[head]+1; visit[next]=1; } if(next==k) return step[next]; } } return -1;}int main(){ memset(step,0,sizeof(step)); memset(visit,0,sizeof(visit)); cin>>n>>k; cout<<bfs()<<endl; return 0;}
很基础的一个BFS,我也不知道该怎么写备注= =
其实我感觉暴力的话,这道题会更加快速的A掉的
POJ 3278 Catch That Cow
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。