This documentation is automatically generated by competitive-verifier/competitive-verifier
// competitive-verifier: PROBLEM https://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=3022
#include <bits/stdc++.h>
#include "../graph/others/block-cut-tree.hpp"
using namespace std;
#ifdef LOCAL
#include "copypaste/debug.h"
#else
#define debug(...) 42
#endif
#define endl '\n'
struct fast_ios {
fast_ios() {
cin.tie(nullptr);
ios::sync_with_stdio(false);
cout << fixed << setprecision(10);
};
} fast_ios_;
int main() {
#ifdef LOCAL
freopen("./data.in", "r", stdin);
#endif
int n, m;
cin >> n >> m;
vector<long long> w(n);
long long sum = 0;
for (int i = 0; i < n; i++) {
cin >> w[i];
sum += w[i];
}
BlockCutTree<int> bct(n);
bct.read(m);
bct.build();
vector<long long> ans(n);
auto &articulation = bct.articulation;
vector<long long> sum2(bct.group.size());
for (int i = 0; i < bct.group.size(); i++) {
for (auto &u : bct.group[i]) {
sum2[i] += w[u];
}
}
auto &g = bct.tree;
vector<long long> sum3(bct.group.size());
vector<long long> dp(bct.group.size());
function<void(int, int)> dfs = [&](int u, int pre) {
sum3[u] = sum2[u];
for (auto &v : g[u]) {
if (v == pre) continue;
dfs(v, u);
dp[u] = max(dp[u], sum3[v]);
sum3[u] += sum3[v];
}
};
dfs(0, -1);
for (auto &u : articulation) {
ans[u] = max(dp[bct[u]], sum - sum3[bct[u]]);
}
for (int i = 0; i < n; i++) {
if (ans[i] == 0) {
ans[i] = sum - w[i];
}
cout << ans[i] << endl;
}
return 0;
}
Traceback (most recent call last):
File "/home/runner/.local/lib/python3.12/site-packages/competitive_verifier/oj_resolve/resolver.py", line 181, in resolve
bundled_code = language.bundle(path, basedir=basedir)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/runner/.local/lib/python3.12/site-packages/competitive_verifier/oj/verify/languages/cplusplus.py", line 252, in bundle
bundler.update(path)
File "/home/runner/.local/lib/python3.12/site-packages/competitive_verifier/oj/verify/languages/cplusplus_bundle.py", line 477, in update
raise BundleErrorAt(
competitive_verifier.oj.verify.languages.cplusplus_bundle.BundleErrorAt: test/aoj-3022.test.cpp: line 10: unable to process #include in #if / #ifdef / #ifndef other than include guards
Env | Name | Status | Elapsed | Memory |
---|---|---|---|---|
g++ | testcase_00 |
![]() |
5 ms | 4 MB |
g++ | testcase_01 |
![]() |
4 ms | 3 MB |
g++ | testcase_02 |
![]() |
4 ms | 4 MB |
g++ | testcase_03 |
![]() |
4 ms | 3 MB |
g++ | testcase_04 |
![]() |
4 ms | 4 MB |
g++ | testcase_05 |
![]() |
4 ms | 4 MB |
g++ | testcase_06 |
![]() |
4 ms | 4 MB |
g++ | testcase_07 |
![]() |
4 ms | 4 MB |
g++ | testcase_08 |
![]() |
4 ms | 3 MB |
g++ | testcase_09 |
![]() |
4 ms | 4 MB |
g++ | testcase_10 |
![]() |
4 ms | 4 MB |
g++ | testcase_11 |
![]() |
53 ms | 22 MB |
g++ | testcase_12 |
![]() |
69 ms | 31 MB |
g++ | testcase_13 |
![]() |
35 ms | 15 MB |
g++ | testcase_14 |
![]() |
40 ms | 18 MB |
g++ | testcase_15 |
![]() |
44 ms | 18 MB |
g++ | testcase_16 |
![]() |
43 ms | 18 MB |
g++ | testcase_17 |
![]() |
22 ms | 13 MB |
g++ | testcase_18 |
![]() |
63 ms | 27 MB |
g++ | testcase_19 |
![]() |
32 ms | 14 MB |
g++ | testcase_20 |
![]() |
60 ms | 27 MB |
g++ | testcase_21 |
![]() |
90 ms | 44 MB |
g++ | testcase_22 |
![]() |
89 ms | 43 MB |
g++ | testcase_23 |
![]() |
102 ms | 44 MB |
g++ | testcase_24 |
![]() |
89 ms | 43 MB |
g++ | testcase_25 |
![]() |
92 ms | 43 MB |
g++ | testcase_26 |
![]() |
91 ms | 43 MB |
g++ | testcase_27 |
![]() |
89 ms | 43 MB |
g++ | testcase_28 |
![]() |
89 ms | 43 MB |
g++ | testcase_29 |
![]() |
91 ms | 44 MB |
g++ | testcase_30 |
![]() |
88 ms | 43 MB |
g++ | testcase_31 |
![]() |
50 ms | 20 MB |
g++ | testcase_32 |
![]() |
5 ms | 4 MB |
g++ | testcase_33 |
![]() |
66 ms | 36 MB |
g++ | testcase_34 |
![]() |
72 ms | 36 MB |
g++ | testcase_35 |
![]() |
69 ms | 36 MB |