这里考虑建立n*2个点,x和x+n建边,边权为1,但是如果转移到x的时候不是传送过来的,那么就不需要加这个这个开销,这里是需要判断的,所以需要保存状态,dis[0][x]表示转移到x这个点的前一个点不是传送过来的,反之dis[1][x]表示是传送到这个点的。ac代码 见评论