mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-01-10 18:48:13 +08:00
49 lines
1.5 KiB
HTML
49 lines
1.5 KiB
HTML
<p>给定一个长度为 <code>n</code> 的字符串 <code>s</code> ,其中 <code>s[i]</code> 是:</p>
|
||
|
||
<ul>
|
||
<li><code>“D”</code> 意味着减少,或者</li>
|
||
<li><code>“I”</code> 意味着增加</li>
|
||
</ul>
|
||
|
||
<p><strong>有效排列</strong> 是对有 <code>n + 1</code> 个在 <code>[0, n]</code> 范围内的整数的一个排列 <code>perm</code> ,使得对所有的 <code>i</code>:</p>
|
||
|
||
<ul>
|
||
<li>如果 <code>s[i] == 'D'</code>,那么 <code>perm[i] > perm[i+1]</code>,以及;</li>
|
||
<li>如果 <code>s[i] == 'I'</code>,那么 <code>perm[i] < perm[i+1]</code>。</li>
|
||
</ul>
|
||
|
||
<p>返回 <em><strong>有效排列 </strong> </em><code>perm</code><em>的数量 </em>。因为答案可能很大,所以请<strong>返回你的答案对</strong> <code>10<sup>9</sup> + 7</code><strong> 取余</strong>。</p>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>示例 1:</strong></p>
|
||
|
||
<pre>
|
||
<strong>输入:</strong>s = "DID"
|
||
<strong>输出:</strong>5
|
||
<strong>解释:</strong>
|
||
(0, 1, 2, 3) 的五个有效排列是:
|
||
(1, 0, 3, 2)
|
||
(2, 0, 3, 1)
|
||
(2, 1, 3, 0)
|
||
(3, 0, 2, 1)
|
||
(3, 1, 2, 0)
|
||
</pre>
|
||
|
||
<p><strong>示例 2:</strong></p>
|
||
|
||
<pre>
|
||
<strong>输入:</strong> s = "D"
|
||
<strong>输出:</strong> 1
|
||
</pre>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>提示:</strong></p>
|
||
|
||
<ul>
|
||
<li><code>n == s.length</code></li>
|
||
<li><code>1 <= n <= 200</code></li>
|
||
<li><code>s[i]</code> 不是 <code>'I'</code> 就是 <code>'D'</code></li>
|
||
</ul>
|