Submission #1145318

#TimeUsernameProblemLanguageResultExecution timeMemory
1145318Rawlat_vanakJobs (BOI24_jobs)C++20
11 / 100
103 ms33860 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define speedIO ios::sync_with_stdio(0);cin.tie(0);cout.tie(0); #define mod 1000000007 #define f first #define s second #define pii pair<int,int> #define pb push_back vector<vector<int>> graph; vector<int> x,dp; void dfs(int u, int p){ int sum=0; for(int v:graph[u]){ if(v==p) continue; dfs(v,u); sum+=dp[v]; } dp[u]=max(dp[u],x[u]+sum); } int32_t main(){ speedIO; int t,n,m,k,q; //cin>>t; t=1; while(t--){ int money; cin>>n>>money; graph.resize(n+1); x.resize(n+1); dp.resize(n+1,0); x[0]=0; for(int i=1;i<=n;i++){ int cost,parent; cin>>cost>>parent; graph[i].pb(parent); graph[parent].pb(i); x[i]=cost; } dfs(0,-1); cout<<dp[0]; } 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...