首页 > 其他分享 >Leetcode 313. Super Ugly Number

Leetcode 313. Super Ugly Number

时间:2024-06-04 12:01:39浏览次数:14  
标签:val min 313 pointers Ugly plen primes Super dp

Problem

A super ugly number is a positive integer whose prime factors are in the array primes.

Given an integer n and an array of integers primes, return the nth super ugly number.

The nth super ugly number is guaranteed to fit in a 32-bit signed integer

Algorithm

Dynamic Programming (DP). Use pointers to save the value of each primes and move the pointer of the small value.

Code

class Solution:
    def nthSuperUglyNumber(self, n: int, primes: List[int]) -> int:
        dp = [1]
        plen = len(primes)
        pointers = [0] * plen
        size = 0
        while size < n:
            min_val = dp[pointers[0]] * primes[0]
            index = 0
            for i in range(1, plen):
                val = dp[pointers[i]] * primes[i]
                if min_val > val:
                    min_val = val
            dp.append(min_val)
            for i in range(0, plen):
                val = dp[pointers[i]] * primes[i]
                if min_val == val:
                    pointers[i] += 1
            size = size + 1
        return dp[n-1]

标签:val,min,313,pointers,Ugly,plen,primes,Super,dp
From: https://blog.csdn.net/mobius_strip/article/details/139437553

相关文章

  • 《信息学奥赛一本通 编程启蒙C++版》3126-3130(5题)
    3126:练21.3 神奇装置信息学奥赛一本通-编程启蒙(C++版)在线评测系统练21.3神奇装置信息学奥赛一本通-编程启蒙(C++版)在线评测系统3126:练21.3神奇装置_哔哩哔哩_bilibili#include<bits/stdc++.h>usingnamespacestd;intmain(){ inta,b,c,d; cin>>a>>b>>c......
  • 阿里开源superAGI代码分析【prompt部分】-核心还是react
    superAGI.txtYouareSuperAGIanAIassistanttosolvecomplexproblems.Yourdecisionsmustalwaysbemadeindependentlywithoutseekinguserassistance.PlaytoyourstrengthsasanLLMandpursuesimplestrategieswithnolegalcomplications.Ifyouh......
  • ABC 313C Approximate Equalization 2
    题意现在给出一个数组a[n],现在你可以进行这种操作:选择i,j(1<=i,j<=n),使得a[i]=a[i]-1,a[j]=a[j]+1现在你可以进行无限次这种操作,现在需要你求出最少次数,使得数组中的最大值与最小值之间的差不超过1。思路我们考虑到每一次操作可以使得数组中的一个数加一,另一个数减一,那么无......
  • [论文速览] DualVector@ Unsupervised Vector Font Synthesis with Dual-Part Represe
    Pretitle:DualVector:UnsupervisedVectorFontSynthesiswithDual-PartRepresentationaccepted:CVPR2023paper:https://arxiv.org/abs/2305.10462code:https://github.com/thuliu-yt16/dualvector关键词:Unsupervison,VectorFontSynthesis,TrueTypeFontConv......
  • Java泛型中<? extends E>和<? super E>的区别
    <?extendsE>      <?extendsE>是UpperBound(上限)的通配符,用来限制元素的类型的上限,比如List<?extendsFruit>fruits;表示集合中的元素类型上限为Fruit类型,即只能是Fruit或者Fruit的子类,因此对于下面的赋值是合理的fruits=newArrayList<Fruit>();fruits......
  • 继承,super,重写,多态,抽象,接口
    继承,super,重写,多态,抽象,接口继承extends用于表示两个类之间的继承关系,继承是OOP的四大特性之一,他允许一个类(称之为子类或派送类)继承另一个类(称之为父类或基类)的变量和方法,子类可以复用父类的方法和变量,也可以添加和覆盖父类的方法和变量extends的基本语法使......
  • 20231325 贾罗祁 《Python程序设计》实验四报告
    20231325贾罗祁2023-2024-2《Python程序设计》实验四报告课程:《Python程序设计》班级:2313姓名:贾罗祁学号:20231325实验教师:王志强实验日期:2024年5月15日必修/选修:公选课1.实验内容Python综合应用:爬虫、数据处理、可视化、机器学习、神经网络、游戏、网络安全等。课......
  • Learning Transferable Visual Models From Natural Language Supervision
    郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布!Proceedingsofthe38thInternationalConferenceonMachineLearning,PMLR139,2021.  Abstract 1.IntroductionandMotivatingWork 2.Approach 2.1.CreatingaSufficientlyLargeDataset ......
  • 100313. 所有球里面不同颜色的数目
    题目描述给你一个整数limit和一个大小为nx2的二维数组queries。总共有limit+1个球,每个球的编号为[0,limit]中一个互不相同的数字。一开始,所有球都没有颜色。queries中每次操作的格式为[x,y],你需要将球x染上颜色y。每次操作之后,你需要求出所有球中不同......
  • Llama模型家族之使用 Supervised Fine-Tuning(SFT)微调预训练Llama 3 语言模型(五)基于已
    LlaMA3系列博客基于LlaMA3+LangGraph在windows本地部署大模型(一)基于LlaMA3+LangGraph在windows本地部署大模型(二)基于LlaMA3+LangGraph在windows本地部署大模型(三)基于LlaMA3+LangGraph在windows本地部署大模型(四)基于LlaMA3+LangGraph在w......