Submission #1346624

#TimeUsernameProblemLanguageResultExecution timeMemory
1346624coderg300711Tree (IOI24_tree)C++20
Compilation error
0 ms0 KiB
#include "bits/stdc++.h"
using namespace std;
#define fi first
#define se second
#define mp make_pair
#define pii pair<int,int>
#define yes cout<<"YES\n"
#define no cout<<"NO\n"
#define pb push_back
#define sz(x) (int)(x).size()
#define rsz resize
#define ass assign
#define F(i,l,r) for(int i=(l);i<(r);++i)
typedef long long ll;
typedef unsigned long long ull;
typedef long double lld;
//template<typename T> using pqg = priority_queue<T, vector<T>, greater<T>>;
#define each(a,x) for(auto a:x)
#define FOR(i,a) for(int i=0;i<(a);i++)
#define ROF(i,a,b) for(int i=(b)-1;i>=(a);i--)
#define eb emplace_back
#define ft front()
#define V vector

#ifndef ONLINE_JUDGE
#define debug(x) cerr << #x <<" "; _print(x); cerr << endl;
#else
#define debug(x)
#endif

void _print(ll t) {cerr << t;}
void _print(int t) {cerr << t;}
void _print(string t) {cerr << t;}
void _print(char t) {cerr << t;}
void _print(lld t) {cerr << t;}
void _print(double t) {cerr << t;}
void _print(ull t) {cerr << t;}

template <class T, class V> void _print(pair <T, V> p);
template <class T> void _print(vector <T> v);
template <class T> void _print(set <T> v);
template <class T, class V> void _print(map <T, V> v);
template <class T> void _print(multiset <T> v);
template <class T, class V> void _print(pair <T, V> p) {cerr << "{"; _print(p.ff); cerr << ","; _print(p.ss); cerr << "}";}
template <class T> void _print(vector <T> v) {cerr << "[ "; for (T i : v) {_print(i); cerr << " ";} cerr << "]";}
template <class T> void _print(set <T> v) {cerr << "[ "; for (T i : v) {_print(i); cerr << " ";} cerr << "]";}
template <class T> void _print(multiset <T> v) {cerr << "[ "; for (T i : v) {_print(i); cerr << " ";} cerr << "]";}
template <class T, class V> void _print(map <T, V> v) {cerr << "[ "; for (auto i : v) {_print(i); cerr << " ";} cerr << "]";}

int n;
V<int> par,wei;
V<V<int>> child;

void init(V<int> P,V<int> W){
  n=sz(P);
  par=P;
  wei=W;
  child.ass(n,V<int>());
  F(i,1,n)child[p[i]].pb(i);
}

ll query(int L,int R){
  ll res=0;
  V<ll> S(n,0);
  ROF(i,0,n){
    ll sum=0;
    each(ch,child[i])sum+=S[ch];
    ll v;
    if(sum<L)v=L;
    else if(sum>R)v=R;
    else v=sum;
    s[i]=v;
    ll cur=abs(v-sum)*(ll)wei[i];
    res+=cur;
  }
  return res;
}

Compilation message (stderr)

tree.cpp: In function 'void init(std::vector<int>, std::vector<int>)':
tree.cpp:59:17: error: 'p' was not declared in this scope
   59 |   F(i,1,n)child[p[i]].pb(i);
      |                 ^
tree.cpp: In function 'll query(int, int)':
tree.cpp:72:5: error: 's' was not declared in this scope
   72 |     s[i]=v;
      |     ^