Submission #51447769
Source Code Expand
// LUOGU_RID: 151695293 #include <bits/stdc++.h> using namespace std; typedef long long i64; const int N = 1e5 + 5; int n, m, id[N]; i64 a[N], b[N], c[N]; vector<int> G[N], E[N]; bool vis[N]; int fa[N]; int find(int x) { return fa[x] == x ? x : fa[x] = find(fa[x]); } i64 ans[N], s[N]; void dfs(int x) { s[x] = b[x]; ans[x] = 1e18; for (int y : E[x]) dfs(y), s[x] += s[y]; for (int y : E[x]) ans[x] = min(ans[x], s[x] - s[y] + max(c[x], ans[y])); if (E[x].size() == 0) ans[x] = b[x] + c[x]; } int main(void) { ios::sync_with_stdio(0); cin >> n >> m; for (int i = 1; i <= n; ++i) cin >> a[i] >> b[i], c[i] = max(a[i] - b[i], 0ll), id[i] = i, fa[i] = i; sort(id + 1, id + n + 1, [&](int x, int y){ return c[x] < c[y]; }); while (m--) { int x, y; cin >> x >> y; G[x].emplace_back(y); G[y].emplace_back(x); } for (int i = 1; i <= n; ++i) { int x = id[i]; for (int y : G[x]) if (vis[y] && find(y) != x) E[x].push_back(find(y)), fa[find(y)] = x; vis[x] = 1; } dfs(id[n]); cout << ans[id[n]] << "\n"; return 0; }
Submission Info
Submission Time | |
---|---|
Task | F - Donation |
User | james1BadCreeper |
Language | C++ 17 (gcc 12.2) |
Score | 1000 |
Code Size | 1170 Byte |
Status | AC |
Exec Time | 73 ms |
Memory | 23808 KiB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 1000 / 1000 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01.txt, sample_02.txt, sample_03.txt |
All | sample_01.txt, sample_02.txt, sample_03.txt, sample_01.txt, sample_02.txt, sample_03.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_16.txt, subtask_1_17.txt, subtask_1_18.txt, subtask_1_19.txt, subtask_1_20.txt, subtask_1_21.txt, subtask_1_22.txt, subtask_1_23.txt, subtask_1_24.txt, subtask_1_25.txt, subtask_1_26.txt, subtask_1_27.txt, subtask_1_28.txt, subtask_1_29.txt, subtask_1_30.txt, subtask_1_31.txt, subtask_1_32.txt, subtask_1_33.txt, subtask_1_34.txt, subtask_1_35.txt, subtask_1_36.txt, subtask_1_37.txt, subtask_1_38.txt, subtask_1_39.txt, subtask_1_40.txt, subtask_1_41.txt, subtask_1_42.txt, subtask_1_43.txt, subtask_1_44.txt, subtask_1_45.txt, subtask_1_46.txt, subtask_1_47.txt, subtask_1_48.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_01.txt | AC | 3 ms | 8140 KiB |
sample_02.txt | AC | 3 ms | 8148 KiB |
sample_03.txt | AC | 3 ms | 8140 KiB |
subtask_1_01.txt | AC | 3 ms | 8192 KiB |
subtask_1_02.txt | AC | 5 ms | 8556 KiB |
subtask_1_03.txt | AC | 13 ms | 9068 KiB |
subtask_1_04.txt | AC | 3 ms | 8096 KiB |
subtask_1_05.txt | AC | 3 ms | 8212 KiB |
subtask_1_06.txt | AC | 4 ms | 8252 KiB |
subtask_1_07.txt | AC | 3 ms | 8156 KiB |
subtask_1_08.txt | AC | 4 ms | 8176 KiB |
subtask_1_09.txt | AC | 3 ms | 8200 KiB |
subtask_1_10.txt | AC | 3 ms | 8260 KiB |
subtask_1_11.txt | AC | 3 ms | 8296 KiB |
subtask_1_12.txt | AC | 3 ms | 8384 KiB |
subtask_1_13.txt | AC | 11 ms | 8924 KiB |
subtask_1_14.txt | AC | 6 ms | 8480 KiB |
subtask_1_15.txt | AC | 14 ms | 10348 KiB |
subtask_1_16.txt | AC | 57 ms | 17528 KiB |
subtask_1_17.txt | AC | 19 ms | 10864 KiB |
subtask_1_18.txt | AC | 60 ms | 18276 KiB |
subtask_1_19.txt | AC | 19 ms | 11564 KiB |
subtask_1_20.txt | AC | 59 ms | 18856 KiB |
subtask_1_21.txt | AC | 62 ms | 22252 KiB |
subtask_1_22.txt | AC | 24 ms | 14068 KiB |
subtask_1_23.txt | AC | 24 ms | 14212 KiB |
subtask_1_24.txt | AC | 17 ms | 11620 KiB |
subtask_1_25.txt | AC | 12 ms | 9900 KiB |
subtask_1_26.txt | AC | 50 ms | 16160 KiB |
subtask_1_27.txt | AC | 40 ms | 14732 KiB |
subtask_1_28.txt | AC | 5 ms | 8540 KiB |
subtask_1_29.txt | AC | 44 ms | 15680 KiB |
subtask_1_30.txt | AC | 60 ms | 17584 KiB |
subtask_1_31.txt | AC | 10 ms | 9352 KiB |
subtask_1_32.txt | AC | 72 ms | 18388 KiB |
subtask_1_33.txt | AC | 69 ms | 18264 KiB |
subtask_1_34.txt | AC | 67 ms | 18240 KiB |
subtask_1_35.txt | AC | 62 ms | 18224 KiB |
subtask_1_36.txt | AC | 67 ms | 18272 KiB |
subtask_1_37.txt | AC | 61 ms | 18208 KiB |
subtask_1_38.txt | AC | 70 ms | 21260 KiB |
subtask_1_39.txt | AC | 66 ms | 22764 KiB |
subtask_1_40.txt | AC | 68 ms | 23808 KiB |
subtask_1_41.txt | AC | 58 ms | 20080 KiB |
subtask_1_42.txt | AC | 69 ms | 18100 KiB |
subtask_1_43.txt | AC | 63 ms | 18180 KiB |
subtask_1_44.txt | AC | 65 ms | 18088 KiB |
subtask_1_45.txt | AC | 67 ms | 18044 KiB |
subtask_1_46.txt | AC | 73 ms | 18200 KiB |
subtask_1_47.txt | AC | 70 ms | 18256 KiB |
subtask_1_48.txt | AC | 73 ms | 18164 KiB |