之前我第八个点没A是因为存在A,B不能同时走但A可以单独走一次的情况,这时要特判。
之前我的代码是这样的
```cpp
for(int j=21;j>=0;j--)
{
if(lucheng[ii][j][0]+lucheng[ii][j][1]<x&&kaiche[ii][j])
{
x-=lucheng[ii][j][0]+lucheng[ii][j][1];
aa+=lucheng[ii][j][0];bb+=lucheng[ii][j][1];
ii=kaiche[ii][j];
}
}
```
改后是这样的
```cpp
for(int j=21;j>=0;j--)
{
if(lucheng[ii][j][0]+lucheng[ii][j][1]<x&&kaiche[ii][j])
{
x-=lucheng[ii][j][0]+lucheng[ii][j][1];
aa+=lucheng[ii][j][0];bb+=lucheng[ii][j][1];
ii=kaiche[ii][j];
}
}
if(num[ii][0]&&dis[ii][0]<=x)//A还可以再走
{
aa+=dis[ii][0];
}
```
不知道能不能帮到你。
by 文刀日天文 @ 2018-10-22 21:30:01