PivotOJ

Counting Haybales

시간 제한: 1000ms메모리 제한: 1024MB출처: USACO 2022 January PlatinumBOJ 24486

문제

As usual, Bessie the cow is causing trouble in Farmer John's barn. FJ has NN (1N50001\leq N \leq 5000) stacks of haybales. For each i[1,N]i\in [1,N], the iith stack has hih_i (1hi1091\le h_i\le 10^9) haybales. Bessie does not want any haybales to fall, so the only operation she can perform is as follows:

  • If two adjacent stacks' heights differ by exactly one, she can move the top haybale of the taller stack to the shorter stack.

How many configurations are obtainable after performing the above operation finitely many times, modulo 109+710^9+7? Two configurations are considered the same if, for all ii, the iith stack has the same number of haybales in both.

입력

The first line contains TT (1T101\le T\le 10), the number of independent test cases, all of which must be solved to solve one input correctly.

Each test case consists of NN, and then a sequence of NN heights. It is guaranteed that the sum of NN over all test cases does not exceed 50005000.

출력

Please output TT lines, one for each test case.

힌트

For the first test case, the four possible configurations are:

(2,2,2,3),(2,2,3,2),(2,3,2,2),(3,2,2,2).(2,2,2,3), (2,2,3,2), (2,3,2,2), (3,2,2,2).

For the second test case, the four possible configurations are:

(2,3,3,1),(3,2,3,1),(3,3,2,1),(3,3,1,2).(2,3,3,1),(3,2,3,1),(3,3,2,1), (3,3,1,2).

예제

예제 1

입력
7
4
2 2 2 3
4
3 3 1 2
4
5 3 4 2
6
3 3 1 1 2 2
6
1 3 3 4 1 2
6
4 1 2 3 5 4
10
1 5 6 6 6 4 2 3 2 5
출력
4
4
5
15
9
8
19
코드를 제출하려면 로그인하세요.