疑问
查看原帖
疑问
1265919
_yang_yi_bo_楼主2024/8/3 11:38

看到添加了数据,想试一下之前的代码有没有被hack掉。

交了两次一模一样的代码。

#include<bits/stdc++.h>
using namespace std;
int n,sf,ef,flor,step;
int a[205];
int d[2]={-1,1};
struct info{
	int flor,step;
}q[10000];
int head,tail,book[205];
int main(){
	cin>>n>>sf>>ef;
	for(int i=1;i<=n;i++){
		cin>>a[i];
		book[sf]=1;
	}q[tail].flor=sf,q[tail].step=0,tail++;
	while(head<tail){
		flor=q[head].flor,step=q[head].step;
		if(flor==ef){
			cout<<step;
			return 0;
		}for(int i=0;i<2;i++){
			int tflor=q[head].flor+d[i]*a[flor],tstep=q[head].step+1;
			if(tflor<1||tflor>n){
				continue;
			}if(book[tflor]==0){
				q[tail].flor=tflor,q[tail].step=tstep;
				tail++;
				book[tflor]=1;
			}
		}head++;
	}cout<<-1;
	return 0;
}

第一次84分,UKE两个点,评测记录。

第二次就AC了,评测记录。

第一次遇到这种情况,求dalao解惑

2024/8/3 11:38
加载中...