Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
求解释,那位帮看下哪出错了,感觉没问题啊?#include <iostream> #include <stdio.h> #include <cstring> using namespace std; int m,n; int queue[210000]; int visit[210000]; int bfs(); main() { //freopen("in3278.txt","r",stdin); while(cin>>m>>n) printf("%d\n",bfs()); return 0; } int bfs() { int head=0,end=0,q=0; memset(visit,0,sizeof(visit)); queue[end]=m; visit[m]=1; end=end+1; while(head<end) { int q=queue[head++]; //cout<<q<<endl; if(q==n) return visit[q]-1; else { //cout<<"########\n"; if((q+1)>=0&&(q+1)<=n&&visit[q+1]==0){queue[end++]=q+1;visit[q+1]=visit[q]+1;} if((q-1)>=0&&(q-1)<=n&&visit[q-1]==0){queue[end++]=q-1;visit[q-1]=visit[q]+1;} if((q*2)>=0&&(q*2)<=n&&visit[2*q]==0){queue[end++]=q*2;visit[q*2]=visit[q]+1;} //cout<<"########\n"; } } return 0; } Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator