状态压缩DP
愣是没看出来。。。。。
dp[i][j]表示第i个节点的以j的二进制为状态的解
转移的代码
for(int i = 0; i < (1 << n); i++)
{
for(int j = 0; j < n; j++)
{
if(dp[j][i] == inf) continue;
for(int k = 0; k < n; k++)
dp[k][i | (1 << k) ] = min(dp[k][i | (1 << k )], dp[j][i] + map[j][k]);
}
}