二进制分组,算个小技巧 bzoj 4398福慧双修 给一张图,同一条边不同方向权值不同,一条边只能走一次,求从1号点出发再回到1号点的最短路 一开始没注意一条边只能走一次这个限制,打了个从一号点相邻节点为原点的dij,样例就挂了 其实就是要从这个错误思路上改进 对于不与1号点相接的边,权值为正,肯定不会重复走,所以这个条件可以忽略 考虑1号点相邻的点,走出第一步后所在的点,和走回1号点前的那个点不能相同 设这两个点编号为\(i\),\(j\),则\(i\),\(j\)的二进制至少有一位不同 所以…