社区讨论

90pts求条

P1001A+B Problem参与者 4已保存回复 5

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
5 条
当前快照
1 份
快照标识符
@mdiubn23
此快照首次捕获于
2025/07/25 21:11
7 个月前
此快照最后确认于
2025/11/04 03:43
4 个月前
查看原帖
最小生成树Prim算法,WA on #7
CPP
#include<bits/stdc++.h>
#define endl "\n"
#define write ios::sync_with_stdio(0);
#define by cin.tie(0);
#define ikun_xiaoheizi cout.tie(0);
using namespace std;
typedef long long LL;
const LL INF = 0x3f3f3f3f3f3f3f3f;
int g[1145][1411];
bool vis[114514];
int dist[114514];
int main() {
	write by ikun_xiaoheizi
	LL a, b;
	cin >> a >> b;
	int n = 2;
	for (int i = 0; i < n; i++) {
		for (int j = 0; j < n; j++) {
			g[i][j] = INF;
		}
		g[i][i] = 0;
	}
	g[0][1] = a + b;
	for (int i = 0; i < n; i++) {
		dist[i] = INF;
	}
	dist[0] = 0;
	LL total = 0;
	for (int i = 1; i <= n; i++) {
		int u = -1;
		for (int j = 0; j < n; j++) {
			if (!vis[j] && (u == -1 || dist[j] < dist[u])) {
				u = j;
			}
		}
		vis[u] = 1;
		if (i > 1) {
			total += dist[u];
		}
		for (int j = 0; j < n; j++) {
			if (!vis[j] && g[u][j] < dist[j]) {
				dist[j] = g[u][j];
			}
		}
	}
	cout << total;
	return 0;
}

回复

5 条回复,欢迎继续交流。

正在加载回复...