Submission #60538387
Source Code Expand
Copy
#include<bits/stdc++.h>using namespace std;using ll=long long;#define N 500005int head[N],ne[N<<1],to[N<<1],num=0;int fa[N];int val[N],cnt;int n1[N],n2[N];ll ans=0;int find(int x){return fa[x] == x ? x : fa[x] = find(fa[x]);}void add(int u,int v){num++;ne[num]=head[u];to[num]=v;head[u]=num;}
#include<bits/stdc++.h> using namespace std; using ll=long long; #define N 500005 int head[N],ne[N<<1],to[N<<1],num=0; int fa[N]; int val[N],cnt; int n1[N],n2[N]; ll ans=0; int find(int x){ return fa[x] == x ? x : fa[x] = find(fa[x]); } void add(int u,int v){ num++; ne[num]=head[u]; to[num]=v; head[u]=num; } void dfs(int x,int p){ // cout<<x<<" "<<p<<"\n"; for(int i=head[x];i>0;i=ne[i]){ int t=to[i]; if(t==p)continue; dfs(t,x); n1[x]+=n1[t]; n2[x]+=n2[t]; } int pp=min(n1[x],n2[x]); // cout<<x<<" "<<val[x]<<" "<<n1[x]<<" "<<n2[x]<<"\n"; ans+=1ll*pp*val[x]; n1[x]-=pp;n2[x]-=pp; } int main(){ ios::sync_with_stdio(false); cin.tie(0);cout.tie(0); int n,m,k; cin>>n>>m>>k; cnt=n; for(int i=1;i<=2*n;i++){ fa[i]=i; } vector<array<int,3>> line(m); for(int i=1;i<=m;i++){ int u,v,w; cin>>u>>v>>w; line[i-1]={w,u,v}; } sort(line.begin(),line.end()); for(int i=0;i<m;i++){ // cout<<line[i][0]<<" "<<line[i][1]<<" "<<line[i][2]<<"\n"; int fu=find(line[i][1]),fv=find(line[i][2]); // cout<<fu<<" "<<fv<<"\n"; if(fu==fv)continue; cnt++; fa[fu]=cnt,fa[fv]=cnt; val[cnt]=line[i][0]; add(cnt,fu); add(fu,cnt); add(cnt,fv); add(fv,cnt); } int rt=find(1); // for(int i=1;i<=2*n-1;i++){ // cout<<fa[i]<<" \n"[i==n*2-1]; // } for(int i=1;i<=k;i++){ int x; cin>>x; n1[x]++; } for(int i=1;i<=k;i++){ int x; cin>>x; n2[x]++; } dfs(rt,0); cout<<ans; return 0; }
Submission Info
Submission Time | |
---|---|
Task | E - Sum of Max Matching |
User | Mint_Cat |
Language | C++ 17 (gcc 12.2) |
Score | 500 |
Code Size | 1530 Byte |
Status | AC |
Exec Time | 101 ms |
Memory | 34476 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 500 / 500 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 00_sample_00.txt, 00_sample_01.txt |
All | 00_sample_00.txt, 00_sample_01.txt, 01_test_00.txt, 01_test_01.txt, 01_test_02.txt, 01_test_03.txt, 01_test_04.txt, 01_test_05.txt, 01_test_06.txt, 01_test_07.txt, 01_test_08.txt, 01_test_09.txt, 01_test_10.txt, 01_test_11.txt, 01_test_12.txt, 01_test_13.txt, 01_test_14.txt, 01_test_15.txt, 01_test_16.txt, 01_test_17.txt, 01_test_18.txt, 01_test_19.txt, 01_test_20.txt, 01_test_21.txt, 01_test_22.txt, 01_test_23.txt, 01_test_24.txt, 01_test_25.txt, 01_test_26.txt, 01_test_27.txt, 01_test_28.txt, 01_test_29.txt, 01_test_30.txt, 01_test_31.txt, 01_test_32.txt, 01_test_33.txt, 01_test_34.txt, 01_test_35.txt, 01_test_36.txt, 01_test_37.txt, 01_test_38.txt, 01_test_39.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00_sample_00.txt | AC | 1 ms | 3580 KB |
00_sample_01.txt | AC | 1 ms | 3584 KB |
01_test_00.txt | AC | 1 ms | 3528 KB |
01_test_01.txt | AC | 1 ms | 3548 KB |
01_test_02.txt | AC | 1 ms | 3552 KB |
01_test_03.txt | AC | 30 ms | 4864 KB |
01_test_04.txt | AC | 8 ms | 3552 KB |
01_test_05.txt | AC | 3 ms | 3684 KB |
01_test_06.txt | AC | 12 ms | 3796 KB |
01_test_07.txt | AC | 1 ms | 3572 KB |
01_test_08.txt | AC | 52 ms | 8056 KB |
01_test_09.txt | AC | 81 ms | 19728 KB |
01_test_10.txt | AC | 46 ms | 9608 KB |
01_test_11.txt | AC | 48 ms | 12092 KB |
01_test_12.txt | AC | 8 ms | 4820 KB |
01_test_13.txt | AC | 19 ms | 6148 KB |
01_test_14.txt | AC | 74 ms | 17784 KB |
01_test_15.txt | AC | 96 ms | 18688 KB |
01_test_16.txt | AC | 82 ms | 18908 KB |
01_test_17.txt | AC | 94 ms | 18972 KB |
01_test_18.txt | AC | 101 ms | 18940 KB |
01_test_19.txt | AC | 89 ms | 18956 KB |
01_test_20.txt | AC | 86 ms | 18740 KB |
01_test_21.txt | AC | 89 ms | 18864 KB |
01_test_22.txt | AC | 86 ms | 18944 KB |
01_test_23.txt | AC | 93 ms | 18940 KB |
01_test_24.txt | AC | 98 ms | 18952 KB |
01_test_25.txt | AC | 99 ms | 18816 KB |
01_test_26.txt | AC | 98 ms | 18728 KB |
01_test_27.txt | AC | 90 ms | 34444 KB |
01_test_28.txt | AC | 89 ms | 34476 KB |
01_test_29.txt | AC | 42 ms | 5332 KB |
01_test_30.txt | AC | 42 ms | 5452 KB |
01_test_31.txt | AC | 42 ms | 5416 KB |
01_test_32.txt | AC | 95 ms | 18988 KB |
01_test_33.txt | AC | 94 ms | 18776 KB |
01_test_34.txt | AC | 93 ms | 18916 KB |
01_test_35.txt | AC | 76 ms | 26600 KB |
01_test_36.txt | AC | 68 ms | 26564 KB |
01_test_37.txt | AC | 54 ms | 34188 KB |
01_test_38.txt | AC | 78 ms | 18892 KB |
01_test_39.txt | AC | 1 ms | 3424 KB |