不是说要把每个节点的所有子节点的贡献用 vector\text{vector}vector 全部存下来,排序 + 前缀和,查询的时候用 lower_bound\texttt{lower\_bound}lower_bound 和 upper_bound\texttt{upper\_bound}upper_bound 么。
如果你用的是 pair\text{pair}pair,你会发现你的输出和样例完全对不上。因为 pair\text{pair}pair 默认的排序函数会在第一关键字相同的条件下按第二关键字排序。
此时你的解决方法有二: