记录编号 598579 评测结果 AAAAA
题目名称 最短Hamilton路径 最终得分 100
用户昵称 GravatarTeaWine 是否通过 通过
代码语言 C++ 运行时间 1.656 s
提交时间 2025-01-25 17:41:09 内存使用 83.32 MiB
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;

int n,mp[86][86],ans,f[1<<20][20];

void wok(int l){
    memset(f,0x3f,sizeof(f));
    f[1][0]=0;
    for(int i = 1; i<1<<n; i++){
        for(int j = 0; j<n; j++){
            if(i>>j&1){
                for(int k = 0; k<n; k++){
                    if((i^1<<j)>>k&1){
                        f[i][j]=min(f[i][j],f[i^1<<j][k]+mp[k][j]);
                    }
                }
            }
        }
    }
}

int main () {
    freopen("ham.in","r",stdin);
    freopen("ham.out","w",stdout);
    
    cin>>n;
    for(int i = 0; i<n; i++)
    for(int j = 0; j<n; j++)
    cin>>mp[i][j];
    
    wok(0);
    
    cout<<f[(1<<n)-1][n-1];
    
    return 0;
}