讨论/题目交流/🏆 第 184 场力扣周赛/
🏆 第 184 场力扣周赛

欢迎小伙伴们在这里交流分享你的参赛心得以及体验。【前往竞赛

image.png

3 分 - 数组中的字符串匹配
4 分 - 查询带键的排列
5 分 - HTML 实体解析器
7 分 - 给 N x 3 网格图涂色的方案数

前三题好像都是暴力过去的,放一个第四题的思路,纪念我自己最短的一次第四题题解。

class Solution:
    def numOfWays(self, n: int) -> int:        
        same, diff = 6, 6    # 代表初始时第一行两类各6种
        for k in range(1,n):            
            same, diff = same * 3 + diff * 2, same * 2 + diff * 2
        return (same + diff) % (10 ** 9 + 7)
    
    
    # 所有排列其实只有两种:
    #     第一类:第一格和第三格相同的:
    #     第一类:第一格和第三格不同的
    # 具体是什么颜色不重要,只要区分这两类就行了
    # 在已知上一行时,下一行的演化是:
    #     如果上一行是第一类:共5种可能,其中3种一类,2种二类
    #     如果上一行是第二类:共4种可能,其中2种一类,2种二类
    #     然后更新这一行每一类的个数,一直迭代下去就行了
3
展开全部 46 讨论