#P1996. 【阿里云研发岗】2025-3-9-第一题-子序列权值和
【阿里云研发岗】2025-3-9-第一题-子序列权值和
题目描述
薯条哥定义一个排列的权值为:
如果排列不满足严格上升,则权值为。
否则,严格上升的排列其权值为:排列的长度。
现在薯条哥有个长为的数组,他想知道中所有“排列”子序列 (即:此子序列是一个排列)的权值之和,请你帮他算一算吧。
输入描述
每个测试文件内都包含多组测试数据。
第一行一个正整数 ,表示测试数据的组数
接下来对于每组测试数据,输入包含两行。
第一行一个正整数,表示数组的长度。
第二行个整数,表示数组。
(保证所有测试数据中的总和不超过。)
输出描述
输出行,每行一个整数表示当前测试用例的答案,即:所有“排列”子序列的权值之和。
(注意:由于答案可能很大,因此你只要输出答案对取模的值即可。)
样例
输入
1
3
1 1 2
输出
6
样例解释
所有的“排列”子序列有:
$\left \{ 1 \right \} ,\left \{ 1 \right \} ,\left \{ 1,2 \right \} ,\left \{ 1,2 \right \} $权值求和为。