Submission #1273600

#TimeUsernameProblemLanguageResultExecution timeMemory
1273600mkkkkkkkkTree (IOI24_tree)C++20
0 / 100
52 ms24068 KiB
#include "tree.h" #include <bits/stdc++.h> using namespace std; vector<int> adj[200001]; int arr[200001],arr2[200001]; void dfs(int i,long long& res,int l,int r) { int sum=0; for(auto it : adj[i]) { dfs(it,res,l,r); sum+=arr2[it]; } if(adj[i].size()==0) { sum=l; res+=l*arr[i]; } if(sum>r) { int br=sum-r; sum=r; res+=br*arr[i]; } arr2[i]=l; } void init(std::vector<int> P, std::vector<int> W) { for(int i=1;i<P.size();i++) { adj[P[i]].push_back(i); arr[i]=W[i]; } arr[0]=W[0]; } long long query(int L, int R) { long long res=0; dfs(0,res,L,R); }

Compilation message (stderr)

tree.cpp: In function 'long long int query(int, int)':
tree.cpp:46:1: warning: no return statement in function returning non-void [-Wreturn-type]
   46 | }
      | ^
#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...