社区讨论
玄关:我不是开够了么
P14076[GESP202509 六级] 货物运输参与者 3已保存回复 3
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 3 条
- 当前快照
- 1 份
- 快照标识符
- @mjvik971
- 此快照首次捕获于
- 2026/01/01 22:01 2 个月前
- 此快照最后确认于
- 2026/01/04 16:10 2 个月前
为什么链式前向星开了1e5会RE,开1e6就过了?
RE Code:
CPP#include<bits/stdc++.h>
using namespace std;
#define int long long
#define debug(n) cout << #n << " = " << n << '\n';
#define deb(n) cout << #n << " = " << n << " ";
#define div() cout << "-----------------------\n";
int n;int sum;int maxn;
int head[100005],to[100005],val[100005],nxt[100005],tot;
void adde(int u, int v, int value){
tot++;
to[tot] = v;
val[tot] = value;
nxt[tot] = head[u];
head[u] = tot;
}
int lea[100005];
void dfs(int now, int fa, int sum){
// debug(now);
lea[now] = sum;
for(int i = head[now];i;i = nxt[i]){
if(to[i] != fa){
// debug(to[i]);
// debug(val[i]);
dfs(to[i],now,val[i] + sum);
}
}
}
signed main(){
cin >> n;
for(int i = 1;i < n;i++){
int u,v,l;cin >> u >> v >> l;
sum += l;
adde(u,v,l);
adde(v,u,l);
}
dfs(1,0,0);
for(int i = 1;i <= n;i++){maxn = max(maxn,lea[i]);}
cout << sum*2-maxn;
return 0;
}
回复
共 3 条回复,欢迎继续交流。
正在加载回复...