9157-黄山旅行


本文总阅读量

数据范围很小,枚举顶点i,直接用邻接矩阵遍历。
为了方便处理,每次经过一个顶点的距离之和进行比较更新。

void dfs(int x, int s)  //x为顶点编号,s为当前边权之和
{
    ans = max(ans,s);
    for(int i = 1; i <= n; i++){
        if(vis[i]==0 && G[x][i]!=0){
            vis[i] = 1;
            dfs(i,s+G[x][i]);
            vis[i] = 0;  //需要取消标记,经过一个点可能存在多条路径
        }
    }
}

本站总访问量