Submission #60541911


Source Code Expand

#include <bits/stdc++.h>
#include <atcoder/dsu>
using namespace std;
template <class T>using pqg = priority_queue<T, vector<T>, greater<T>>;  // ascendent
int main(){
  int n, m, k;
  cin >> n >> m >> k;
  pqg<pair<int, pair<int, int>>> pq;
  for(int i = 0; i < m; i++){
    int u, v, w;
    cin >> u >> v >> w;
    pq.emplace(w, make_pair(u-1, v-1));
  }
  vector<int> ab(n, 0); //aが1つある:+
  for(int i = 0; i < k; i++){
    int a;
    cin >> a;
    ab[a-1]++;
  }
  for(int i = 0; i < k; i++){
    int b;
    cin >> b;
    ab[b-1]--;
  }
  // for(int i = 0; i < n; i++) cout << ab[i] << " \n"[i==n-1];
  long long ans = 0;
  atcoder::dsu uf(n);
  while(!pq.empty()){
    int w;
    pair<int, int> p;
    tie(w, p) = pq.top();
    pq.pop();
    if(uf.same(p.first, p.second)) continue;
    int x = ab[uf.leader(p.first)];
    int y = ab[uf.leader(p.second)];
    if((x>0&&y<0)||(x<0&&y>0)) ans += (long long)w*min(abs(x), abs(y));
    uf.merge(p.first, p.second);
    ab[uf.leader(p.first)] = x+y;
  }
  cout << ans << endl;
}

Submission Info

Submission Time
Task E - Sum of Max Matching
User suisankafe2
Language C++ 17 (gcc 12.2)
Score 500
Code Size 1074 Byte
Status AC
Exec Time 222 ms
Memory 7156 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 500 / 500
Status
AC × 2
AC × 42
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 3444 KiB
00_sample_01.txt AC 1 ms 3424 KiB
01_test_00.txt AC 1 ms 3420 KiB
01_test_01.txt AC 1 ms 3516 KiB
01_test_02.txt AC 2 ms 3468 KiB
01_test_03.txt AC 88 ms 6220 KiB
01_test_04.txt AC 22 ms 4232 KiB
01_test_05.txt AC 6 ms 3576 KiB
01_test_06.txt AC 29 ms 4120 KiB
01_test_07.txt AC 2 ms 3524 KiB
01_test_08.txt AC 144 ms 6164 KiB
01_test_09.txt AC 164 ms 6776 KiB
01_test_10.txt AC 111 ms 6284 KiB
01_test_11.txt AC 103 ms 5104 KiB
01_test_12.txt AC 18 ms 3764 KiB
01_test_13.txt AC 49 ms 4124 KiB
01_test_14.txt AC 164 ms 6304 KiB
01_test_15.txt AC 196 ms 6924 KiB
01_test_16.txt AC 164 ms 6932 KiB
01_test_17.txt AC 205 ms 6968 KiB
01_test_18.txt AC 219 ms 6928 KiB
01_test_19.txt AC 176 ms 6968 KiB
01_test_20.txt AC 177 ms 7048 KiB
01_test_21.txt AC 188 ms 7040 KiB
01_test_22.txt AC 163 ms 6992 KiB
01_test_23.txt AC 188 ms 7024 KiB
01_test_24.txt AC 222 ms 7044 KiB
01_test_25.txt AC 221 ms 7156 KiB
01_test_26.txt AC 220 ms 7028 KiB
01_test_27.txt AC 220 ms 6992 KiB
01_test_28.txt AC 220 ms 6968 KiB
01_test_29.txt AC 130 ms 6224 KiB
01_test_30.txt AC 126 ms 6196 KiB
01_test_31.txt AC 125 ms 6168 KiB
01_test_32.txt AC 207 ms 6968 KiB
01_test_33.txt AC 207 ms 7048 KiB
01_test_34.txt AC 207 ms 7040 KiB
01_test_35.txt AC 199 ms 6984 KiB
01_test_36.txt AC 190 ms 7056 KiB
01_test_37.txt AC 147 ms 6980 KiB
01_test_38.txt AC 183 ms 6960 KiB
01_test_39.txt AC 1 ms 3404 KiB