题号:NC219016
时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
牛牛在玩贪吃蛇,玩贪吃蛇吃掉别的蛇就会变长。牛牛的蛇被别人吃掉后,发现可以看广告复活,且复活后长度不变。
牛牛想到了一个作弊的高招,他和他邀请的

个朋友进入同一个房间玩贪吃蛇,初始时一共有

条蛇,第

条蛇的长度为

,进入游戏后,首先牛牛从这

条蛇中选择一条蛇作为自己的蛇,然后他的第

个朋友从剩下的

条蛇中选择一条蛇,然后他的第

个朋友从剩下的

条蛇中选择一条蛇... ...直到牛牛的第

个朋友选择蛇后,游戏开始,现在他们互相吃掉对方。
设蛇

此时的长度

,蛇

此时的长度

,蛇

吃掉蛇

后
蛇
长度会变为

,而蛇

则需要看

秒广告复活。
牛牛的朋友都会帮助牛牛使牛牛的蛇变得尽可能的长,牛牛想知道,

秒后牛牛的蛇最长可以是多长?
(假设蛇吃蛇不花时间,可以无限次复活,除了吃蛇没有其它方式可以变长,房间里除了牛牛和牛牛的朋友外没有别人)
由于答案可能很大,你只需要输出答案对

取模的结果。
输入描述:
输入包含

组测试用例,第一行一个整数

每组测试用例第一行三个整数

每组测试用例第二行

个整数

输出描述:
输出
行,第
行为第
组测试用例的答案。
示例1
输入
复制
3
1 3 4
2
5 7 8
6 6 6 6 6
5 1 8
6 6 6 6 6
备注:
