leetcode-1220-Count Vowels Permutation
问题
Given an integer n
, your task is to count how many strings of length n
can be formed under the following rules:
- Each character is a lower case vowel (
'a'
,'e'
,'i'
,'o'
,'u'
) - Each vowel
'a'
may only be followed by an'e'
. - Each vowel
'e'
may only be followed by an'a'
or an'i'
. - Each vowel
'i'
may not be followed by another'i'
. - Each vowel
'o'
may only be followed by an'i'
or a'u'
. - Each vowel
'u'
may only be followed by an'a'.
Since the answer may be too large, return it modulo 10^9 + 7.
Example 1:
1 | Input: n = 1 |
Example 2:
1 | Input: n = 2 |
Example 3:
1 | Input: n = 5 |
Constraints:
1 <= n <= 2 * 10^4
分析
两种分析思路,第一种是考虑每个字符后面能接哪些字符,另一种是考虑一个字符能接在以哪些字符串结尾的后面。
代码1
1 | class Solution { |
代码2
1 | class Solution { |
Author: Hatton.Liu
Link: http://hattonl.github.io/2020/04/01/leetcode-1220/
License: 知识共享署名-非商业性使用 4.0 国际许可协议