Description
千和有 n 个括号序列,分别是 S1,S2,S3,…,Sn。
小黑有 m 个括号序列,分别是 T1,T2,T3,…,Tm。
对一个括号序列 A,f(A) 为满足以下条件的正整数对 (i,j) 对数:
- i∈[1,n],j∈[1,m];
- Si 是 A 的前缀且 Tj 是 A 的后缀。
她们想知道对于所有长度为偶数 k 的合法括号序列 S,f(S) 的和。答案对 109+7 取模。
第一行,一个正整数 c,表示测试点编号。特殊地,对样例,c=0。
第二行,三个正整数 n,m,k,其中 k 为偶数。
接下来 n 行,每行一个字符串 Si。
接下来 m 行,每行一个字符串 Tj。
仅一行,一个自然数,表示答案对 109+7 取模后的值。
0
1 2 6
(
()
())
4
Hint
【样例解释 #1】
长度为 6 的合法括号序列有 ()()()、()(())、(())()、(()())、((())),分别记作 S1,S2,S3,S4,S5,答案为 f(S1)+f(S2)+f(S3)+f(S4)+f(S5)=1+1+1+1+0=4。
【样例 #2】
见附件中的 bracket/bracket2.in 与 bracket/bracket2.ans。
该组样例满足测试点 1∼2 的约束条件。
【样例 #3】
见附件中的 bracket/bracket3.in 与 bracket/bracket3.ans。
该组样例满足测试点 3∼4 的约束条件。
【样例 #4】
见附件中的 bracket/bracket4.in 与 bracket/bracket4.ans。
该组样例满足测试点 14∼15 的约束条件。
【样例 #5】
见附件中的 bracket/bracket5.in 与 bracket/bracket5.ans。
该组样例满足测试点 20∼21 的约束条件。
【数据范围】
对于所有测试数据,保证 1≤n,m≤2×105,$1\leq \vert S_i\vert,\vert T_j\vert\leq \min(k,5\times 10^5)$,$1\leq \sum \vert S_i\vert,\sum \vert T_j\vert\leq 10^7$,2≤k≤106,k 为偶数。
| 测试点编号 |
n,m≤ |
∣Si∣,∣Tj∣≤ |
∑∣Si∣,∑∣Tj∣≤ |
k≤ |
特殊性质 |
| 1∼2 |
10 |
100 |
15 |
无 |
| 3∼4 |
50 |
100 |
5×103 |
100 |
| 5∼8 |
250 |
5×103 |
5×105 |
5×103 |
| 9∼11 |
5×103 |
105 |
2×105 |
| 12∼13 |
5×104 |
A |
| 14∼15 |
B |
| 16∼17 |
105 |
2×103 |
106 |
C |
| 18∼19 |
105 |
| 20∼21 |
无 |
| 22∼23 |
2×105 |
5×105 |
107 |
106 |
C |
| 24∼25 |
无 |
- 特殊性质 A:k<min∣Si∣+min∣Tj∣;
- 特殊性质 B:保证 Si,Tj 是合法的括号序列;
- 特殊性质 C:k≥max∣Si∣+max∣Tj∣。