黑洞(hole)
题目背景
注意:本场比赛提交时不开启文件输入输出。
上图给出了二维下与红点在同一条对角线上的所有方格。
考虑三维下的情况,下图给出了与红色方块在同一条对角线上的所有方块。
本题我们将会把对角线这个概念推广到 n 维上。
题目描述
已知一片 n 维空间,第 i 维的大小为 mi。我们使用一个 n 维坐标 (x1,x2,…,xn) 表示这片 n 维空间里的一个位置,其中 xi 为 [1,mi] 间的整数。
在位置 (a1,a2,…,an) 处有一颗黑洞。这片 n 维空间中所有与它在同一条对角线上的位置都将被吞噬:
- 称位置 (a1,a2,…,an) 与 (b1,b2,…,bn) 在同一条对角线上,当且仅当存在一个整数 k≥0,使得对每个 1≤i≤n,都有 ∣ai−bi∣=k。
你需要求出共有多少个位置会被黑洞吞噬(即与黑洞在同一条对角线上,包括黑洞所处位置本身)。答案对 109+7 取模。
输入格式
第一行,一个正整数 n,表示维度数。
第二行,n 个正整数 m1,…,mn,表示每一维的大小。
第三行,n 个正整数 a1,…,an,表示黑洞的位置。
输出格式
仅一行一个整数,表示该 n 维空间中被黑洞吞噬的位置个数。答案对 109+7 取模。
样例 #1
样例输入 #1
2
6 6
2 3
样例输出 #1
8
样例 #2
样例输入 #2
2
999999999 999999999
500000000 500000000
样例输出 #2
999999990
样例 #3
样例输入 #3
3
5 7 8
4 5 2
样例输出 #3
12
提示
【样例解释 #1】
如题目背景中的图所示,其中红色圆形为黑洞所在位置,黑色方格为被黑洞吞噬的位置,共 8 个。
【样例解释 #2】
有 1999999997 个位置被黑洞吞噬,1999999997 对 109+7 取模的结果为 999999990。
【样例解释 #3】
如题目背景中的图所示,(1,2,5),(2,3,4),(2,7,4),(3,4,1),(3,4,3),(3,6,1),(3,6,3),(4,5,2),(5,4,1),(5,4,3),(5,6,1),(5,6,3) 共 12 个位置被黑洞吞噬。
【样例 #4】
见附件中的 hole/hole4.in
与 hole/hole4.ans
。
该组样例满足测试点 9∼10 的约束条件。
【样例 #5】
见附件中的 hole/hole5.in
与 hole/hole5.ans
。
该组样例满足测试点 11∼13 的约束条件。
【样例 #6】
见附件中的 hole/hole6.in
与 hole/hole6.ans
。
该组样例满足测试点 14∼19 的约束条件。
【样例 #7】
见附件中的 hole/hole7.in
与 hole/hole7.ans
。
该组样例满足测试点 20∼25 的约束条件。
【数据范围】
本题共 25 个测试点,每个 4 分。
测试点编号 |
n |
mi≤ |
1∼2 |
=2 |
106 |
3∼4 |
109 |
5∼6 |
=3 |
106 |
7∼8 |
109 |
9∼10 |
≤20 |
15 |
11∼13 |
109 |
14∼19 |
≤1000 |
20∼25 |
≤2×105 |
对于全部数据,保证:2≤n≤2×105,1≤ai≤mi≤109。
样例下载