编译错误找半天找不出来
  • 板块灌水区
  • 楼主_XSOI_
  • 当前回复2
  • 已保存回复2
  • 发布时间2024/1/13 14:32
  • 上次更新2024/1/13 16:48:48
查看原帖
编译错误找半天找不出来
1161545
_XSOI_楼主2024/1/13 14:32

调了一晚上的代码,头昏脑胀,一早上写了一份编译错误求找

#include <iostream>
#include <algorithm>
#include <cstring>
#define int long long
using namespace std;
const int MAXX = 2000001;
int cnt, sum, sum_sum, n, m;
int fa[MAXX];
struct edge {
	int u, v, w;
} e[MAXX];
int find(int x) {
	if (x != fa[x]) return fa[x] = find(fa[x]);
	return x;
}
bool cmp(edge a, edge b) {
	return a.w < b.w;
}
void tree() {
	sort(e + 1, e + 1 + m, cmp);
	for (int i = 1; i <= m; i++) {
		int u = find(e[i].u);
		int v = find(e[i].v);
		if (u == v) {
			continue;
		}
		sum += e[i].w;
		fa[u] = v;
	}
}
int main() {
	while (cin >> n >> m) {
		if (n == 0 and m == 0) {
			break;
		}
		sum_sum = 0;
		sum = 0;
		memset(e, 0, sizeof(e));
		for (int i = 1; i <= n; i ++) {
			fa[i] = i;
		}
		for (int i = 1; i <= m; i ++) {
			cin >> e[i].u >> e[i].v >> e[i].w;
			sum_sum += e[i].w;
		}
		tree();
		cout << sum_sum - sum << endl;
	}
	return 0;
}
2024/1/13 14:32
加载中...