R91682313是我RE的
源码:(P1135)
#include <bits/stdc++.h>//stupid windows,stupid dev-c++
using namespace std;//I love linux!
struct node
{
int now;
int total;
} x;
queue<node> que;
int nums[500];
bool mark[500], ans = 0x7fffffff;
int main()
{
int n, a, b;
cin >> n >> a >> b;
int i;
for (i = 1;i <= n;i++)
{
cin >> nums[i];
}
que.push((node){a, 0});
while (!que.empty())
{
x = que.front();
que.pop();
if (x.now == b)
{
break;
}
if (x.now + nums[x.now] <= n && mark[x.now + nums[x.now]] == false)
{
que.push((node){x.now + nums[x.now], x.total + 1});
mark[x.now + nums[x.now]] = true;
}
if (x.now - nums[x.now] <= n && mark[x.now - nums[x.now]] == false)
{
que.push((node){x.now - nums[x.now], x.total + 1});
mark[x.now - nums[x.now]] = true;
}
}
if (x.now == b)
{
cout << x.total;
}
else
{
cout << -1;
}
return 0;
}
R91682798开了O2直接A了