LeetCode Weekly Contest 370
問題文
省略
省略
C++に変換後のコードはこちら
#define main dummy_main
{}
#undef main
class Solution {
public:
ll maximumScoreAfterOperations(VVI &edges, VI &A) {
dummy_main();
static int N, a[1d5], b[], pre[];
static ll dp[1d5][2];
graph g;
N = vec2arr(edges, a, b) + 1;
g.setEdgeRootedTree(N, N-1, a, b);
g.preorder(pre);
rrep[pre](i,N){
ll s0 = 0, s1 = 0;
rep[g.edge[i]](j,g.es[i]) (s0, s1) += (dp[j][0], dp[j][1]);
(dp[i][0], dp[i][1]) = s1 + (0, A[i]);
if(g.es[i]) dp[i][0] >?= A[i] + s0;
}
return dp[0][0];
}
};
Current time: 2024年05月06日02時34分21秒
Last modified: 2023年11月05日14時01分33秒 (by laycrs)
Tags: Competitive_Programming_Incomplete LeetCode
トップページに戻る
Logged in as: unknown user (not login)