只有部分分,求调
  • 板块学术版
  • 楼主Leave_Childhood
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/7/23 16:55
  • 上次更新2024/7/23 18:22:42
查看原帖
只有部分分,求调
1035525
Leave_Childhood楼主2024/7/23 16:55

奇怪的电梯

#include<bits/stdc++.h>
using namespace std;
int s[520],u[520],n,a,b,w=INT_MAX;
#define  pii pair<int , int>
queue<pii>q;
void bfs()
{
	q.push({a,0});
	while(!q.empty())
	{
		auto c=q.front();
		u[c.first]=1;
		q.pop();
		if(c.first==b){
			w=min(w,c.second);
		}
		int x = c.first-s[c.first], y = c.first+s[c.first];
		if(y<=b&&u[y]==0)q.push({y, c.second + 1});
		if(x>0&&u[x]==0)q.push({x, c.second + 1});
	}
	if(w==INT_MAX)cout<<-1;
	else cout<<w;
}
int main()
{
	cin>>n>>a>>b;
	for(int i=1;i<=n;i++)
	{
		cin>>s[i];
	}
	bfs();
	return 0;
}
2024/7/23 16:55
加载中...