AcWing 91 最短Hamilton路径(状压dp)
2021-01-09 13:31
标签:oid code 情况 进制 int ++ http 通过 void 题目链接 ??状压dp入门题,也是经典的tsp问题。因为tsp问题是np完全问题,所以我们只能考虑通过大量枚举来做。需要注意的一点是,如果走过了1->2->3这样一条路径,要到达第4个点的话,并不一定需要从3出发,只要从前面走过的点出发即可,所以我们并不需要把所以的点按前后顺序走出来的情况全部枚举出来。 AcWing 91 最短Hamilton路径(状压dp) 标签:oid code 情况 进制 int ++ http 通过 void 原文地址:https://www.cnblogs.com/shuitiangong/p/13096706.html解题思路
??考虑最后一步的情况,我们已经走过了N-1个点,要访问最后一个点,那么结果就是从之前N-1个点之中的一个走过来的最小值。所以问题就是如何表示前面已经走过了哪些点。这里用状压dp的方法,把二进制数的1表示访问过,0表示位访问过,以dp[state][k]表示当前状态最后到达k点的总花费,那么状态转移方程就是dp[i][j] = min(dp[i][j],dp[i-(1
int dp[1>j&1) {
for (int k = 0; k
上一篇:C# 几种常见数据结构【转】
下一篇:windows关闭端口方法
文章标题:AcWing 91 最短Hamilton路径(状压dp)
文章链接:http://soscw.com/index.php/essay/41178.html