测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A6606. 「LNOI2022」吃

编程题 提高+/省选-
知识点

题目描述

小 A 很喜欢吃东西。

小 A 面前有 $n$ 份食物,第 $i$ 份有参数 $a_i$ 和 $b_i$。小 A 可以按照**任意顺序**吃掉这 $n$ 份食物。当她吃掉编号为 $i$ 的食物时,她可以选择将自己的体重乘以 $a_i$ 或者将自己的体重加上 $b_i$。每份食物只能吃恰好一次。

小 A 的初始体重为 $1$,请求出她吃完 $n$ 份食物后能达到的**最大**体重。答案可能很大,你只需要输出其对 $({10}^9 + 7)$ 取模后的结果。

**注意:你需要最大化体重并将该最大值对 $\boldsymbol{({10}^9 + 7)}$ 取模,而非最大化体重对 $\boldsymbol{({10}^9 + 7)}$ 取模的结果。**

输入格式

第一行输入一个整数 $n$ 表示食物的数量。第二行 $n$ 个整数 $a_1, a_2, \ldots, a_n$,第三行 $n$ 个整数 $b_1, b_2, \ldots, b_n$,表示每份食物的参数。

输出格式

输出一个整数,表示小 A 可以得到的最大体重对 $({10}^9 + 7)$ 取模后的结果。

输入输出样例

输入 #1
5
1 2 3 4 5
100 200 300 400 500
输出 #1
18060

说明/提示

对于 $100 \%$ 的测试数据,$1 \le n \le 5 \times {10}^5$,$1 \le a_i, b_i \le {10}^6$。

| 测试点编号 | $n \le $ | 特殊性质 |
|:-:|:-:|:-:|
| $1$ | $10$ | DE |
| $2$ | $10$ | E |
| $3$ | $10$ | AE |
| $4$ | $10$ | E |
| $5$ | $20$ | DE |
| $6$ | $20$ | E |
| $7$ | $20$ | E |
| $8$ | $20$ | E |
| $9$ | $2000$ | D |
| $10$ | $2000$ | 无 |
| $11$ | $2000$ | 无 |
| $12$ | $2000$ | 无 |
| $13$ | $5 \times {10}^5$ | BD |
| $14$ | $5 \times {10}^5$ | B |
| $15$ | $5 \times {10}^5$ | C |
| $16$ | $5 \times {10}^5$ | C |
| $17$ | ${10}^5$ | 无 |
| $18$ | ${10}^5$ | 无 |
| $19$ | $5 \times {10}^5$ | 无 |
| $20$ | $5 \times {10}^5$ | 无 |

特殊性质 A:$a_i = 1$。
特殊性质 B:$a_i \ge b_i$。
特殊性质 C:$a_i, b_i$ 在 $[1, {10}^6]$ 内独立均匀随机生成。
特殊性质 D:$a_i \ge 2$。
特殊性质 E:$a_i \le 4$。
上一题 去做题 下一题