_313_super_ugly_number(2).py 文件源码

python
阅读 21 收藏 0 点赞 0 评论 0

项目:LeetCode 作者: YJL33 项目源码 文件源码
def nthSuperUglyNumber(self, n, primes):
        """
        :type n: int
        :type primes: List[int]
        :rtype: int
        """
        from heapq import merge
        uglies = [1]
        def gen(prime):                             # Here "gen" is a iterator
            for ugly in uglies:
                yield ugly * prime
        merged = heapq.merge(*map(gen, primes))     # Here "merge" is a generator
        while len(uglies) < n:
            ugly = next(merged)
            if ugly != uglies[-1]:
                uglies.append(ugly)
        return uglies[-1]
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号