Submission #1133599

#TimeUsernameProblemLanguageResultExecution timeMemory
1133599CiprianMagic Tree (CEOI19_magictree)C++20
3 / 100
2095 ms3400 KiB
#include <bits/stdc++.h> using namespace std; #define int long long int32_t main() { ios_base::sync_with_stdio(0); cin.tie(0); int n, m,k; cin>>n>>m>>k; vector<int>p(n+2),deg(n+2); for(int i=2; i<=n; i++){ cin>>p[i]; deg[p[i]]++; }int sum=0; bool check=true; vector<int>day(n+4), dp(k+1); for(int i=0; i<m; i++){ int v,d,w; cin>>v>>d>>w; day[v]=d; if(deg[v]!=0)check=false; sum+=w; }if(check)cout<<sum<<endl; else { for(int i=n; i>=1; i--){ if(day[i]!=0){ for(int j=day[i]; j>=1; j--){ dp[day[i]]=max(dp[day[i]], dp[j]+1); }//cout<<day[i]<<" "<<dp[day[i]]<<endl; } }int mx=0; for(int i=1; i<=k; i++){ mx=max(mx,dp[i]); }cout<<mx<<endl; } 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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...