社区讨论
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 条回复,欢迎继续交流。
正在加载回复...