51nod 1640 天氣晴朗的魔法(並查集)

2021-07-11 05:46:12 字數 1581 閱讀 7610

1640 天氣晴朗的魔法

基準時間限制:1 秒 空間限制:131072 kb 分值: 20

難度:3級演算法題

這樣陰沉的天氣持續下去,我們不免擔心起他的健康。
51nod魔法學校近日開展了主題為「天氣晴朗」的魔法交流活動。

n名魔法師按陣法站好,之後選取n - 1條魔法鏈將所有魔法師的魔力連線起來,形成乙個魔法陣。

魔法鏈是做法成功與否的關鍵。每一條魔法鏈都有乙個魔力值v,魔法最終的效果取決於陣中所有魔法鏈的魔力值的和。

由於逆天改命的魔法過於暴力,所以我們要求陣中的魔法鏈的魔力值最大值盡可能的小,與此同時,魔力值之和要盡可能的大。

現在給定魔法師人數n,魔法鏈數目m。求此魔法陣的最大效果。

input

兩個正整數n,m。(1 <= n <= 10^5, n <= m <= 2 * 10^5)

接下來m行,每一行有三個整數a, b, v。(1 <= a, b <= n, int_min <= v <= int_max)

保證輸入資料合法。

output

輸出乙個正整數r,表示符合條件的魔法陣的魔力值之和。
input示例

4 6

1 2 3

1 3 1

1 4 7

2 3 4

2 4 5

3 4 6

output示例

12

#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;

#define esp 1e-8

const double pi = acos(-1.0);

const double e = 2.718281828459;

const int inf = 2147483647;

const long long mod = 1000000007;

//freopen("in.txt","r",stdin); //輸入重定向,輸入資料將從in.txt檔案中讀取

//freopen("out.txt","w",stdout); //輸出重定向,輸出資料將儲存在out.txt檔案中cin

int f[100005];

struct node

x[200005];

bool cmp(node a, node b)

int find(int x)

int main()

if (y == n - 1)

break;

} for (i = 1; i <= n; ++i)

f[i] = i;

y = 0;

for (i = m - 1; i >= 0; --i)

if (y == n - 1)

break;

} printf("%lld\n", s);

}}

51Nod 1640 天氣晴朗的魔法

1640 天氣晴朗的魔法 基準時間限制 1 秒 空間限制 131072 kb 分值 20 難度 3級演算法題 這樣陰沉的天氣持續下去,我們不免擔心起他的健康。51nod魔法學校近日開展了主題為 天氣晴朗 的魔法交流活動。n名魔法師按陣法站好,之後選取n 1條魔法鏈將所有魔法師的魔力連線起來,形成乙個...

51nod1640天氣晴朗的魔法

1640 天氣晴朗的魔法 基準時間限制 1 秒 空間限制 131072 kb 分值 20 難度 3級演算法題 這樣陰沉的天氣持續下去,我們不免擔心起他的健康。51nod魔法學校近日開展了主題為 天氣晴朗 的魔法交流活動。n名魔法師按陣法站好,之後選取n 1條魔法鏈將所有魔法師的魔力連線起來,形成乙個...

51 nod 1640天氣晴朗的魔法(最小生成樹)

這樣陰沉的天氣持續下去,我們不免擔心起他的健康。51nod魔法學校近日開展了主題為 天氣晴朗 的魔法交流活動。n名魔法師按陣法站好,之後選取n 1條魔法鏈將所有魔法師的魔力連線起來,形成乙個魔法陣。魔法鏈是做法成功與否的關鍵。每一條魔法鏈都有乙個魔力值v,魔法最終的效果取決於陣中所有魔法鏈的魔力值的...