Submission #5945353


Source Code Expand

#include<bits/stdc++.h>
#define rep(i,n) for(auto i=0;i<n;i++)
using namespace std;
int ans=0;
vector<vector<int>>edge(1<<10,vector<int>());
vector<int>cost(1<<10,INT_MAX);
void dfs(int from){
  if(edge[from].size()==0)return;
  for(auto&& to:edge[from]){
    ans+=cost[to]-cost[from];
    dfs(to);
  }
}
int main(){
  int n,m;
  cin>>n>>m;
  vector<int>parent(n+1);
  rep(i,n-1){
    int v;
    cin>>v;
    edge[v].push_back(i+1);
    parent[i+1]=v;
  }
  vector<int>leaf;
  rep(i,m){
    int v,b;  cin>>v>>b;
    cost[v]=b;
    leaf.push_back(v);
  }
  for(auto&& v:leaf){
    while(v!=0){
      cost[parent[v]]=min(cost[parent[v]],cost[v]);
      v=parent[v];
    }
  }
  cost[0]=0;
  dfs(0);
  cout<<ans<<endl;
}

Submission Info

Submission Time
Task B - PackDrop
User hryshtk
Language C++14 (GCC 5.4.1)
Score 300
Code Size 756 Byte
Status AC
Exec Time 2 ms
Memory 384 KB

Judge Result

Set Name All
Score / Max Score 300 / 300
Status
AC × 27
Set Name Test Cases
All 00_sample_1, 00_sample_2, 00_sample_3, 10_random_00_n_5, 10_random_01_n_10, 10_random_02_n_2, 10_random_03_n_7, 10_random_04_n_6, 20_random_00_n_64, 20_random_01_n_95, 20_random_02_n_20, 20_random_03_n_33, 20_random_04_n_91, 30_random_00_n_793, 30_random_01_n_611, 30_random_02_n_852, 40_random_00_n_1000, 40_random_01_n_1000, 50_edge_one_00_n_11, 50_edge_one_01_n_101, 50_edge_one_02_n_999, 98_almost_straight_00_n_1000, 98_almost_straight_01_n_1000, 98_almost_straight_02_n_1000, 99_straight_00_n_10, 99_straight_01_n_100, 99_straight_02_n_1000
Case Name Status Exec Time Memory
00_sample_1 AC 1 ms 256 KB
00_sample_2 AC 1 ms 256 KB
00_sample_3 AC 1 ms 256 KB
10_random_00_n_5 AC 1 ms 256 KB
10_random_01_n_10 AC 1 ms 256 KB
10_random_02_n_2 AC 1 ms 256 KB
10_random_03_n_7 AC 1 ms 256 KB
10_random_04_n_6 AC 1 ms 256 KB
20_random_00_n_64 AC 1 ms 256 KB
20_random_01_n_95 AC 1 ms 256 KB
20_random_02_n_20 AC 1 ms 256 KB
20_random_03_n_33 AC 1 ms 256 KB
20_random_04_n_91 AC 1 ms 256 KB
30_random_00_n_793 AC 2 ms 256 KB
30_random_01_n_611 AC 2 ms 256 KB
30_random_02_n_852 AC 2 ms 256 KB
40_random_00_n_1000 AC 2 ms 256 KB
40_random_01_n_1000 AC 2 ms 256 KB
50_edge_one_00_n_11 AC 1 ms 256 KB
50_edge_one_01_n_101 AC 1 ms 256 KB
50_edge_one_02_n_999 AC 2 ms 256 KB
98_almost_straight_00_n_1000 AC 1 ms 384 KB
98_almost_straight_01_n_1000 AC 1 ms 384 KB
98_almost_straight_02_n_1000 AC 1 ms 384 KB
99_straight_00_n_10 AC 1 ms 256 KB
99_straight_01_n_100 AC 1 ms 256 KB
99_straight_02_n_1000 AC 1 ms 384 KB