| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1365963 | ezzzay | Jobs (BOI24_jobs) | C++20 | 132 ms | 32804 KiB |
#include <bits/stdc++.h>
using namespace std;
#define ff first
#define ss second
#define pb push_back
#define int long long
const int N=4e5+5;
int p[N],x[N];
vector<int>v[N];
int cst[N];
void dfs(int a, int p){
int s=0;
for(auto b:v[a]){
if(b==p)continue;
dfs(b,a);
s+=max(cst[b],0ll);
}
cst[a]=max(0ll,s+x[a]);
}
signed main(){
int n,s;
cin>>n>>s;
for(int i=1;i<=n;i++){
cin>>x[i]>>p[i];
if(p[i])v[p[i]].pb(i);
}
int ans=0;
for(int i=1;i<=n;i++){
if(p[i]==0){
dfs(i,0);
ans+=cst[i];
}
}
cout<<ans;
}| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
