| # | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
|---|---|---|---|---|---|---|---|
| 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;
}| # | 결과 | 실행 시간 | 메모리 | 채점기 출력 |
|---|---|---|---|---|
| 결과를 불러오는 중입니다… | ||||
| # | 결과 | 실행 시간 | 메모리 | 채점기 출력 |
|---|---|---|---|---|
| 결과를 불러오는 중입니다… | ||||
| # | 결과 | 실행 시간 | 메모리 | 채점기 출력 |
|---|---|---|---|---|
| 결과를 불러오는 중입니다… | ||||
| # | 결과 | 실행 시간 | 메모리 | 채점기 출력 |
|---|---|---|---|---|
| 결과를 불러오는 중입니다… | ||||
| # | 결과 | 실행 시간 | 메모리 | 채점기 출력 |
|---|---|---|---|---|
| 결과를 불러오는 중입니다… | ||||
