发布前明明好好的,发完后我点击【固定链接】就变成你们看到的这样了
#include
using namespace std;
int n,k,a[55][55],b[50005],x,y,e;
string aa;
//vectoredge[55];
bool v[55][50005];
queueX;
queueY;
queueE;
int main()
{
cin>>n>>k;
for(int i=1;i>b[i];
}
for(int i=1;i>aa;
for(int j=1;j<=k;j++)
{
a[i][j]=int(aa[i-1]-'0');
}
}
// for(int i=1;i<=k;i++)
// {
// for(int j=1;j<=n;j++)
// {
// if(a[i][b[j]]==1)
// {
// edge[i].push_back(j);
// }
// }
// }
X.push(1);
Y.push(b[1]);
E.push(0);
while(!X.empty())
{
x=X.front();
y=Y.front();
e=E.front();
X.pop();
Y.pop();
E.pop();
if(x==n&&y==b[n])
{
cout<<e<<endl;
return 0;
}
if(x<n&&v[y][x+1]!=1)
{
v[y][x+1]=1;
X.push(x+1);
Y.push(y);
E.push(e+1);
}
if(x<n&&v[y][x-1]==0)
{
v[y][x-1]=1;
X.push(x-1);
Y.push(y);
E.push(e+1);
}
if(a[y][b[x]]==1)
{
for(int i=1;i<=k;i++)
{
if(a[b[x]][i]==1)
{
if(v[i][x+1]==0)
{
v[i][x+1]=1;
X.push(x+1);
Y.push(i);
E.push(e+1);
}
if(v[i][x-1]==0)
{
v[i][x+1]=1;
X.push(x-1);
Y.push(i);
E.push(e+1);
}
}
}
}
}
}