CF1673D Lost Arithmetic Progression

题目描述

很久以前,你想到了两个有限的[等差级数](https://baike.baidu.com/item/%E7%AD%89%E5%B7%AE%E7%BA%A7%E6%95%B0) $A$ 和 $B$。然后你发现另一个序列 $C$ 包含了 $A$ 和 $B$ 的所有公有元素。不难看出, $C$ 也是一个有限等差数列。 许多年后,你忘记了 $A$ 是什么,但还记得 $B$ 数列和 $C$ 数列。出于某种原因,你决心找到这个丢失的等差数列。在你开始这个永恒搜索之前,你想知道有多少个不同的有限等差数列可以作为你丢失的数列 $A$。 如果两个等差数列的第一项、公差数或项数不同,则认为它们不同。 有可能有无限多这样的数列,在这种情况下,你不需要尝试找到它们!你只要直接输出 $-1$。 即使它们的数量有限,答案也可能非常大。你只需要求对 $10^9+7$ 取模的答案。

输入格式

输出格式

说明/提示

对于第一个测试用例,$B=\{-3,-2,-1,0,1,2,3\}$、$C=\{-1,1,3,5\}$,不存在等差数列 $A$,因为 $5$ 不存在于 $B$ 中,所以 $5$ 也不应该存在于 $C$ 中。 对于第二个测试用例,$B=\{-9,-6,-3,0,3,6,9,12,15,18,21\}$、$C=\{0,6,12\}$,有 $10$ 个可能的等差数列 $A$: - $\{0,6,12\}$ - $\{0,2,4,6,8,10,12\}$ - $\{0,2,4,6,8,10,12,14\}$ - $\{0,2,4,6,8,10,12,14,16\}$ - $\{-2,0,2,4,6,8,10,12\}$ - $\{-2,0,2,4,6,8,10,12,14\}$ - $\{-2,0,2,4,6,8,10,12,14,16\}$ - $\{-4,-2,0,2,4,6,8,10,12\}$ - $\{-4,-2,0,2,4,6,8,10,12,14\}$ - $\{-4,-2,0,2,4,6,8,10,12,14,16\}$ 对于第三个测试用例,$B=\{2,7,12,17,22\}$、$C=\{7,12,17,22\}$,有无限多个可能的等差数列 $A$: - $ \{7,12,17,22\} $ - $ \{7,12,17,22,27\} $ - $ \{7,12,17,22,27,32\} $ - $ \{7,12,17,22,27,32,37\} $ - $ \{7,12,17,22,27,32,37,42\} $ - $ \ldots $