#P14521. 【MX-S11-T2】加减乘除

    ID: 16224 远端评测题 2000ms 512MiB 尝试: 0 已通过: 0 显示难度普及+/提高− 上传者: 标签>贪心线段树树状数组离散化O2优化前缀和差分离线处理梦熊比赛

【MX-S11-T2】加减乘除

背景

想象一朵未来的玫瑰 - 贰零Levent / 星尘

题目描述

给定一棵有 nn 个节点的树,节点编号为 1∼n1 \sim n,根节点为 11,每个点上有一个符号(加减号其中之一)opi\mathrm{op}_i 和一个数 aia_i,每条边都有一个区间 [l,r][l, r]。

你现在在节点 11,手中有一个数 xx,你需要进行以下流程:

  • 假设你在节点 uu,你将手中的数 xx 变为 xopuaux \mathbin{\mathrm{op}_u} a_u。
  • 你可以选择在点 uu 结束流程,也可以选择一个子节点 vv,假设连接 u,vu, v 的边的区间为 [l,r][l, r],需要满足 l≤x≤rl \le x \le r,然后走到 vv 并重复这两个步骤。

给定 qq 次询问,每次给出你手上的数的初值 xx,你需要回答你能在上面结束流程的节点个数。

输入格式

第一行,两个整数 n,qn,q。

接下来 n−1n - 1 行,第 ii 行三个整数 pi+1,li+1,ri+1p_{i+1}, l_{i+1}, r_{i+1} 表示 i+1i + 1 的父亲为 pi+1p_{i+1},连接它们的边的区间为 [li+1,ri+1][l_{i + 1}, r_{i + 1}]。

接下来 nn 行,第 ii 行一个字符 opi\mathrm{op}_i 与一个整数 aia_i。

接下来 qq 行,每行一个整数 xx。

输出格式

输出 qq 行,每行一个整数,表示答案。

5 5
1 4 7
1 5 8
2 3 4
2 1 6
+ 3
- 2
+ 1
- 4
+ 7
1
2
3
4
5
3
5
5
4
2

提示

【样例解释 #1】

当 x=1x=1 时,能在节点 1,2,51,2,5 上结束流程。

当 x=2x=2 时,能在节点 1,2,3,4,51,2,3,4,5 上结束流程。

当 x=3x=3 时,能在节点 1,2,3,4,51,2,3,4,5 上结束流程。

当 x=4x=4 时,能在节点 1,2,3,51,2,3,5 上结束流程。

当 x=5x=5 时,能在节点 1,31,3 上结束流程。

【样例 #2】

见选手目录下的 calc/calc2.in\textbf{\textit{calc/calc2.in}} 与 calc/calc2.ans\textbf{\textit{calc/calc2.ans}}。

该样例满足测试点 1∼31\sim 3 的约束条件。

【样例 #3】

见选手目录下的 calc/calc3.in\textbf{\textit{calc/calc3.in}} 与 calc/calc3.ans\textbf{\textit{calc/calc3.ans}}。

该样例满足测试点 4∼64\sim 6 的约束条件。

【样例 #4】

见选手目录下的 calc/calc4.in\textbf{\textit{calc/calc4.in}} 与 calc/calc4.ans\textbf{\textit{calc/calc4.ans}}。

该样例满足测试点 7∼97\sim 9 的约束条件。

【样例 #5】

见选手目录下的 calc/calc5.in\textbf{\textit{calc/calc5.in}} 与 calc/calc5.ans\textbf{\textit{calc/calc5.ans}}。

该样例满足测试点 1010 的约束条件。

【样例 #6】

见选手目录下的 calc/calc6.in\textbf{\textit{calc/calc6.in}} 与 calc/calc6.ans\textbf{\textit{calc/calc6.ans}}。

该样例满足测试点 11∼2011\sim 20 的约束条件。

【数据范围】

本题共 2020 个测试点,每个 55 分。

对于所有测试数据,保证:

  • 1≤n≤5×1051 \le n \le 5 \times 10^5;
  • 1≤q≤1061 \le q \le 10^6;
  • −1018≤li≤ri≤1018-10^{18} \le l_i \le r_i \le 10^{18};
  • −1018≤x,ai≤1018-10^{18} \le x, a_i \le 10^{18};
  • opi∈{+,−}\mathrm{op}_i\in\{+,-\};
  • 1≤pi<i1 \le p_i < i。

::cute-table{tuack}

测试点编号 n≤n \le q≤q \le 特殊性质
1∼31\sim 3 10310^3 无
4∼64\sim 6 5×1055\times 10^5 10610^6 A
7∼97\sim 9 ^ B
1010 C
11∼2011\sim 20 无
  • 特殊性质 A:对于所有 2≤i≤n2 \le i \le n 均有 pi=i−1p_i=i-1。
  • 特殊性质 B:对于所有 2≤i≤n2 \le i \le n 均有 li=−103l_i=-10^3、ri=103r_i=10^3,并且对于所有 1≤i≤n1 \le i \le n 均有 −103≤ai≤103-10^3\le a_i \le 10^3,并且 −103≤x≤103-10^3\le x \le 10^3。
  • 特殊性质 C:对于所有 1≤i≤n1 \le i \le n 均有 ai=0a_i=0。