90WA,但下载数据一模一样,求调
查看原帖
90WA,但下载数据一模一样,求调
1284088
meifan666楼主2024/10/6 22:48
#include <bits/stdc++.h>
using namespace std;
int T;
struct zhui{
	int a,v;
};
queue<zhui>p;
bool vis[200100];
int x,y;
signed main() {
	cin>>T;
	while(T--){
		while(!p.empty())p.pop();
		cin>>x>>y;
		memset(vis,0,sizeof(vis));
		p.push(zhui{x,0});
		while(!p.empty()){
			zhui t=p.front();p.pop();
			if(t.a<1||t.a>2*y||vis[t.a])continue;
			if(t.a==y){
				cout<<t.v<<'\n';
				break;
			}
			vis[t.a]=1;
			p.push(zhui{t.a+1,t.v+1});
			p.push(zhui{t.a-1,t.v+1});
			p.push(zhui{t.a*2,t.v+1});
		}
	}
	return 0;
}
2024/10/6 22:48
加载中...