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

Posted grandyang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[LeetCode] 903. Valid Permutations for DI Sequence DI序列的有效排列相关的知识,希望对你有一定的参考价值。



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 题目讲解汇总(持续更新中...)

以上是关于[LeetCode] 903. Valid Permutations for DI Sequence DI序列的有效排列的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode Graph Valid Tree

LeetCode 125. Valid Palindrome

#Leetcode# 20.Valid Parentheses

LeetCode Valid Word Square

leetcode20. Valid Parentheses

LeetCode-Valid Palindrome