Class Solution
-
- All Implemented Interfaces:
public final class Solution903 - Valid Permutations for DI Sequence\.
Hard
You are given a string
sof lengthnwheres[i]is either:'D'means decreasing, or'I'means increasing.
A permutation
permofn + 1integers of all the integers in the range[0, n]is called a valid permutation if for all validi:If
s[i] == 'D', thenperm[i] > perm[i + 1], andIf
s[i] == 'I', thenperm[i] < perm[i + 1].
Return the number of valid permutations
perm. Since the answer may be large, return it modulo <code>10<sup>9</sup> + 7</code>.Example 1:
Input: s = "DID"
Output: 5
Explanation: The 5 valid permutations of (0, 1, 2, 3) are:
(1, 0, 3, 2) (2, 0, 3, 1) (2, 1, 3, 0) (3, 0, 2, 1) (3, 1, 2, 0)Example 2:
Input: s = "D"
Output: 1
Constraints:
n == s.length1 <= n <= 200s[i]is either'I'or'D'.
-
-
Constructor Summary
Constructors Constructor Description Solution()
-
Method Summary
Modifier and Type Method Description final IntegernumPermsDISequence(String s)-
-
Method Detail
-
numPermsDISequence
final Integer numPermsDISequence(String s)
-
-
-
-