题目描述 小 H 为了完成一篇论文,一共要完成 $n$ 个实验。 其中第 $i$ 个实验需要 $a i$ 的时间去完成。 小 H 可以同时进行若干实验,但存在一些实验,只有当它的若干前置实验完成时,才能开始进行该实验。 同时我们认为小 H 在一个实验的前置实验都完成时,就能马上开始该实验。 为了让小 H 尽快完成论文,需要知道在最优的情况下,最后一个完成的实验什么时候完成? 小 H 还想知道,在保证最后一个实验尽快完成的情况下(即保证上一问的答案不变),他想知道每个实验最晚可以什么时候开始。 设第 $i$ 个实验最早可能的开始时间为 $f i$,不影响最后一个实验完成时间的最晚开始时间为 $g i$,请你回答 $\prod {i=1}^n (g i - f i + 1)$ 除以 $10^9+7$ 所得的余数。 题目保证有解。 输入格式 从标准输入读入数据。 第一行输入一个整数 $n$,$m$。 第二行输入 $n$ 个正整数,$a 1, a 2, \ldots, a n$,描述每个实验完成所需要的时间。 接下来读入 $m$ 行,每行读入两个整数 $u$, $v$,表示编号为 $u$ 的实验是编号为 $v$ 的实验的前置实验。 对于所有的输入数据,都满足 $1 \leq n \leq 10^5$, $1 \leq m \leq 5 \times 10^5$, $1 \leq a i \leq 10^6$。 输出格式 输出到标准输出。 第一行输出一个整数表示最晚完成的实验的时间。 第二行输出一个整数表示 $\sum {i=1}^{n} f i \times g i$ 除以 $10^9+7$ 所得的余数。 输入样例 7 5 11 20 17 10 11 17 17 5 4 6 1 7 3 2 4 2 1 输出样例 34 7840