#CSP1198. 随机评测机 (random)

    ID: 4553 Type: Default File IO: random 1000ms 256MiB Tried: 34 Accepted: 5 Difficulty: 8 Uploaded By: Tags>CSP-S复赛模拟国庆集训

随机评测机 (random)

题目描述

本题输入量较大,请选择较快的读入方式。

小 Y 和小 Z 都是顶级OI选手,他们的实力实在是太强了,甚至没有什么题目能让他们一决胜负。

于是他们选择另一种公平的方式一决高下:使用随机评测机来判题!具体的,不论选手提交任何代码,随机评测机都会等概率地返回通过(AC)和答案错误(WA)之一。由于比赛是OI赛制,任何选手都不能在比赛过程中知道评测的结果,不论是自己的提交还是其他人的提交。

这场终极比赛只包含一道题目。只有通过了这道题目的选手可以成为胜者。但为了保证两人都通过了题目时仍然能比出谁更厉害,比赛引入了罚时机制 —— 某个选手的的罚时为(在第一次结果为通过的提交之前的提交次数 ×20+\times 20 + 第一次结果为通过的提交的提交时间)。如果两人都做出了题目,那么罚时更少的人为胜者。如果两人罚时仍然相同,那也没有更好的方法判断谁是胜者了 —— 两人会再一次共享胜者的荣誉。

现在已知在整个比赛过程中,小 Y 进行了 nn 次提交,第 ii 次提交在比赛开始之后的第 xix_i 秒。小 Z 进行了 mm 次提交,第 jj 次提交在比赛开始之后的第 yiy_i 秒。

现在比赛结果还没有公布,但小 Y 已经急不可耐了。所以他请你来帮他计算一下,在所有的 2n+m2^{n+m} 种可能的评测结果中,有多少种小 Y 能够成为胜者?答案对 998244353998244353 取模。

输入格式

random.in 文件读入数据。

第一行一个整数 TT,代表数据组数。对于每组数据:

第一行两个整数 n,mn,m

第二行 nn 个整数 x1,x2,,xn (x1x2xn)x_1,x_2,\dots, x_n\ (x_1\le x_2\le \dots \le x_n),代表小 Y 每次提交的提交时间。

第三行 mm 个整数 y1,y2,,ym (y1y2ym)y_1,y_2,\dots, y_m\ (y_1\le y_2\le \dots \le y_m),代表小 Z 每次提交的提交时间。

输出格式

输出到 random.out 文件。

对于每组数据,输出一行一个整数,代表答案。

样例 1

1
1 2
40
10 20
2

对于样例 1,所有可能的结果如下表所示:

情况 小Y的提交结果 小 Z 的第一次提交结果 小 Z 的第二次提交结果 小 Y 的罚时 小 Z 的罚时 胜者
1 WA WA WA - -
2 AC 40 小 Z
3 AC WA 10
4 AC
5 AC WA WA 40 - 小 Y
6 AC 40 小 Y 和 小 Z
7 AC WA 10 小 Z
8 AC

样例 2

点击链接 ex_random2.inex_random2.out 下载大样例 2 的输入数据和输出数据。

数据范围

对于每个测试点,$1\le T\le 10^3,~1\le n,m\le 10^6,~1\le x_i,y_i\le 10^9$,TT 组数据的 n+mn+m 之和不超过 4×1064\times 10^6

子任务 分数 附加约束条件
11 1010 n=1n=1m=1m=1
22 1515 1n,m101\le n,m\le 10
33 2020 1n,m1001\le n,m\le 100
44 2525 TT 组数据的 n+mn+m 之和不超过 4×1054\times 10^5
55 3030 无附加限制