国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

1001. Battle Over Cities - Hard Version (35)

2019-11-06 06:29:07
字體:
供稿:網(wǎng)友

這道題其實(shí)就是求去掉某節(jié)點(diǎn)后的最小生成樹的長(zhǎng)度,取最大的長(zhǎng)度的序號(hào)進(jìn)行輸出,如果所有序號(hào)最小生成樹長(zhǎng)度都為0,則輸出0

#include<iostream>#include<vector>#PRagma warning(disable:4996)using namespace std;int N, M, s_max = 0;vector<int> re;int arc[505][505];vector<int> x;vector<int> te;void ins(int t){ for (int i = 1;i <= N;i++) if (i != t) x.push_back(i);}int main(){ for (int t = 0;t < 505;t++) for (int i = 0;i < 505;i++) arc[t][i] = 0x3f3f3f3f; cin >> N >> M; while (M--) { int a, b, c, d; scanf("%d %d %d %d", &a, &b, &c, &d); if (d) arc[a][b] = arc[b][a] = 0; else arc[a][b] = arc[b][a] = c; } for (int t = 1;t <= N;t++) { x.clear();te.assign(N + 1, -1); ins(t); int f = x.back();x.pop_back(); for (int i = 0;i < x.size();i++)//初始化 te[x[i]] = arc[f][x[i]]; int eff = 0; while (!x.empty())//最小生成樹 { int min_s = 0x3f3f3f3f;int v = 0; for (int i = 0;i < x.size();i++) { if (min_s > te[x[i]]) { min_s = te[x[i]]; v = i; } } if (min_s == 0x3f3f3f3f) { eff = min_s;break; } eff += min_s; int ttt=x[v]; x.erase(x.begin() + v); v = ttt; for (int i = 0;i < x.size();i++) if (arc[v][x[i]] < te[x[i]]) te[x[i]] = arc[v][x[i]]; } if (eff> s_max) { s_max = eff; re.clear(); re.push_back(t); } else if (eff == s_max) re.push_back(t); } if (s_max == 0 && re.size() == N) { cout << 0 << endl;exit(0); } cout << re[0]; for (int t = 1;t < re.size();t++) cout << " " << re[t]; cout << endl;}
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 宜城市| 阳朔县| 中超| 南丰县| 木兰县| 醴陵市| 永修县| 扶余县| 拜城县| 祁连县| 安仁县| 嘉义县| 乌兰察布市| 来安县| 皋兰县| 鹿泉市| 阜阳市| 遂川县| 灌云县| 万载县| 临朐县| 泉州市| 闸北区| 丽江市| 万载县| 固镇县| 桐乡市| 彰武县| 丹凤县| 桦南县| 麦盖提县| 郁南县| 新和县| 大石桥市| 安康市| 四子王旗| 邳州市| 松江区| 巩留县| 龙里县| 永丰县|