QOJ.ac

QOJ

时间限制: 2 s 内存限制: 256 MB 总分: 100

#1859. 合理的职场关系

统计

下属必须无条件服从上级的命令。如果有任何异议,他们可以稍后再提。“如果你把锅甩给下属,他们只能忍气吞声地接受”……这些在职场小说中常见的词句真的反映了现状吗?让我们转向一个更具体的简化模型。

现在,我们有一个职场关系模型,即上下级关系。假设只有一个大老板。既然被称为大老板,他们自然没有上级。大老板有一些直接管理的下属,而这些下属又有自己的下属……如此重复多次,我们可以清楚地看到这个模型是一棵有根树。模型中有 $n$ 个人,编号从 $1$ 到 $n$。人 $i$ 的上级是节点 $i$ 的父节点,大老板是树的根。我们给每个人 $i$ 一个整数 $a_i$ 来衡量他们的能力。

一个群体由一个人(称为该群体的领导者)以及他们所有的直接和间接下属组成。显然,一个群体对应于某棵子树,而群体领导者就是该子树的根。我们知道,领导者对下属的管理不应仅仅基于领导者和下属的能力,这太狭隘且不利于管理。由于领导者的特殊地位,他们显然还有所谓的威望来帮助他们管理。因此,我们给每个人 $i$ 一个整数 $w_i$ 来衡量他们的威望。

凭借威望和一定的能力,领导力可以服众。不幸的是,总有一些下属的能力值 ($a_j$) 大于领导者的能力与威望之和,这非常糟糕。无论领导者多么开明,心中总会有一些不快。

为了简化问题,考虑一个以 $i$ 为领导者的群体。设以 $i$ 为根的子树有 $s_i$ 个节点。设 $k_i$ 为该子树中满足 $a_j > a_i + w_i$ 的节点 $j$ 的数量。那么人 $i$ 作为领导者变得不快乐的概率为 $k_i/s_i$(领导者很简单,他们要么快乐,要么不快乐)。不同人的快乐概率是相互独立的。

现在,为了衡量公司职场关系结构的合理性,让我们看看一些群体。具体来说,我们需要回答 $m$ 个问题。对于问题 $i$,考虑由人 $x_i$ 领导的群体。我们需要计算该群体中预期会有多少人作为领导者是快乐的。

输入格式

第一行包含两个整数 $n$ 和 $m$ ($2 \le n \le 3 \cdot 10^5, 1 \le m \le 3 \cdot 10^5$)。

下一行包含 $n$ 个整数 $p_1, p_2, \dots, p_n$,其中 $p_i$ 表示人 $i$ 的上级。如果 $p_i = 0$,则第 $i$ 个人没有上级,是大老板。保证只有一个大老板,但不保证老板的编号是 $1$。同时也保证上下级关系构成一棵有根树。

接下来一行包含 $n$ 个整数 $a_1, a_2, \dots, a_n$,表示每个人的能力 ($1 \le a_i \le 10^9$)。

随后一行包含 $n$ 个整数 $w_1, w_2, \dots, w_n$,表示每个人的威望 ($1 \le w_i \le 10^9$)。

接下来的 $m$ 行,每行包含一个整数 $x_i$,询问由 $x_i$ 领导的群体中预期有多少人是快乐的。

输出格式

输出 $m$ 行,每行一个整数:对应查询的答案。

由于查询的结果可能不是整数,你需要输出模 $10^9 + 7$ 后的值。形式上,可以证明答案可以表示为分数 $p/q$,其中 $p$ 和 $q$ 为互质的非负整数。你需要输出 $p \cdot q^{-1} \pmod{10^9 + 7}$。

样例

输入 1

2 2
0 1
1 10
1 1
1
2

输出 1

500000005
1

说明

人 $1$ 快乐的概率为 $1/2$。人 $2$ 将永远快乐。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.