Submission #1323596

#TimeUsernameProblemLanguageResultExecution timeMemory
1323596huoiJobs (BOI24_jobs)C++17
11 / 100
86 ms25820 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define INF 1e18 int n; vector<int> p, dp; vector<vector<int>> adj; void dfs(int u) { dp[u] = p[u]; for (int v : adj[u]) { dfs(v); if (dp[v] >= 0) dp[u] += dp[v]; } } void solve() { int n; cin >> n; p.resize(n + 1); dp.resize(n + 1); adj.resize(n + 1); cin >> p[0]; for (int i = 1; i <= n; i++) { int dep; cin >> p[i] >> dep; adj[dep].push_back(i); } dfs(0); cout << dp[0] - p[0]; } int32_t main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); solve(); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...