| ||||||||||
| 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 | |||||||||
Re:为啥3278我的结果和正确的结果一样却还说wrong answer???In Reply To:为啥3278我的结果和正确的结果一样却还说wrong answer??? Posted by:harrymwz at 2009-08-25 17:03:45 > #include<iostream>
> #include<queue>
> using namespace std;
>
> queue<int> iq;
> int front=0,rear=1,trear=1,cnt=0;
> int visit[100000]={0};
>
> void bfs(long n,long k){
> while(front<rear){
> long n=iq.front();
> iq.pop();
> if(n==k){cout<<cnt<<endl; return;}
> if(n-1<=k&&!visit[n-1]){iq.push(n-1);visit[n-1]=1; ++trear;}
> if(n+1<=k&&!visit[n+1]){iq.push(n+1);visit[n-1]=1; ++trear;}
> if(n*2<=k&&!visit[n*2]){iq.push(n*2);visit[n*2]=1; ++trear;}
> ++front;
> }
> front=rear; rear=trear;++cnt;
> bfs(iq.front(),k);
> }
> int main(){
> int n,k;
> //memset(visit,0,sizeof visit);
> cin>>n>>k;
> if(n>=k) {cout<<n-k<<endl;return 0;}
> iq.push(n);
> visit[n]=1;
> bfs(n,k);
> //system("pause");
> return 0;
> }
>
Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator