当前位置 : 主页 > 手机开发 > ROM >

[LeetCode] 903. Valid Permutations for DI Sequence DI序列的有效排列

来源:互联网 收集:自由互联 发布时间:2021-06-10
We are given? S , a length? n ?string of characters from the set? {‘D‘, ‘I‘} . (These letters stand for "decreasing" and "increasing".) A? valid permutation ?is a permutation? P[0], P[1], ..., P[n] ?of integers? {0, 1, ..., n} , suc



We are given?S, a length?n?string of characters from the set?{‘D‘, ‘I‘}. (These letters stand for "decreasing" and "increasing".)

A?valid permutation?is a permutation?P[0], P[1], ..., P[n]?of integers?{0, 1, ..., n}, such that for all?i:

  • If?S[i] == ‘D‘, then?P[i] > P[i+1], and;
  • If?S[i] == ‘I‘, then?P[i] < P[i+1].

How many valid permutations are there?? Since the answer may be large,?return your answer modulo?10^9 + 7.

Example 1:

Input: "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)

Note:

  1. 1 <= S.length <= 200
  2. S?consists only of characters from the set?{‘D‘, ‘I‘}.



Github 同步地址:

https://github.com/grandyang/leetcode/issues/CHANGE_ME



参考资料:

https://leetcode.com/problems/valid-permutations-for-di-sequence/



LeetCode All in One 题目讲解汇总(持续更新中...)

网友评论