第三题: void helper(int idx, int nums, int &res, int cur, vector<vector<pair<int, int>>> &neigh, vector<bool> &flag) {     if (idx == 0 && flag[idx] == true) {         if (nums == flag.size())             res = min(res, cur);         return;     }     for (int i = 0; i < neigh[idx].size(); i++) {         if (flag[neigh[idx][i].first] == false) {             flag[neigh[idx][i].first] = true;             helper(neigh[idx][i].first, nums + 1, res, cur + neigh[idx][i].second, neigh, flag);             flag[neigh[idx][i].first] = false;         }     } } int main() {     int n, m;     cin >> n >> m;     if (n == 1) {         cout << 0 << endl;         return 0;     }     vector<vector<pair<int, int>>> neigh(n);     while (m--) {         int a, b, t;         cin >> a >> b >> t;         neigh[a].push_back(make_pair(b, t));         neigh[b].push_back(make_pair(a, t));     }     vector<bool> flag(n, false);     int res = INT_MAX;     helper(0, 0, res, 0, neigh, flag);     if (res == INT_MAX)         cout << -1 << endl;     else         cout << res << endl;     system("pause");     return 0; }
点赞 6

相关推荐

头像 会员标识
02-19 13:42
门头沟学院 Java
运气爆棚福星高赵:清✌️不用很在意项目,八股算法是重点,八股算法说的过去绝对要您
点赞 评论 收藏
分享
03-12 21:51
门头沟学院 C++
pdd卡怎么严吗&nbsp;笔试a出来两道,第三题a出来20%直接给挂了😭😭😭
鳍足目:我a了2.5道也挂了,但是组里同学只a了1.6道进面了,而且我和他都是无实习,本硕同校,感觉全是玄学
投递拼多多集团-PDD等公司10个岗位 > 拼多多求职进展汇总
点赞 评论 收藏
分享
牛客网
牛客企业服务