首页 > 其他 > 详细

leetcode-157周赛-5216-统计元音字母序列的数目

时间:2019-10-07 12:38:39      阅读:145      评论:0      收藏:0      [点我收藏+]

题目描述:

技术分享图片

 

 方法:倒推

class Solution(object):
    def countVowelPermutation(self, n):
        MOD = 10 ** 9 + 7
        a=e=i=o=u= 1
        
        for ZZZ in xrange(n-1):
            a2,e2,i2,o2,u2 = e+i+u,a+i,e+o,i,i+o
            a=a2
            e=e2
            i=i2
            o=o2
            u=u2
            a %= MOD
            e %= MOD
            i %= MOD
            o %= MOD
            u %= MOD
        return (a+e+i+o+u) % MOD

优化:

class Solution:
    def countVowelPermutation(self, n: int) -> int:
        a, e, i, o, u = 1, 1, 1, 1, 1
        MAX = 10 ** 9 + 7
        
        for k in range(1, n):
            a, e, i, o, u = (e + i + u) % MAX, (a + i) % MAX, (e + o) % MAX, i, (i + o) % MAX
        
        return (a + e + i + o + u) % MAX

 

leetcode-157周赛-5216-统计元音字母序列的数目

原文:https://www.cnblogs.com/oldby/p/11629775.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!