[leetcode]第 n个丑数
我们把只包含质因子 2、3 和 5 的数称作丑数(Ugly Number)。求按从小到大的顺序的第 n 个丑数。
示例:
输入: n = 10
输出: 12
解释: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数。
1
2
3
说明:
1 是丑数。
n 不超过1690。
class Solution {public int nthUglyNumber(int n) {int[] dp = new int[n + 1];dp[1] = 1;int p2 = 1, p3 = 1, p5 = 1;for (int i = 2; i <= n; i++) {int num2 = dp[p2] * 2, num3 = dp[p3] * 3, num5 = dp[p5] * 5;dp[i] = Math.min(Math.min(num2, num3), num5);if (dp[i] == num2) {p2++;}if (dp[i] == num3) {p3++;}if (dp[i] == num5) {p5++;}}return dp[n];}
}
class Solution {public int nthUglyNumber(int n) {if(n<=0){return 0;}int[] dp = new int[n];dp[0] = 1;int a = 0, b = 0, c = 0;int i = 1;while(i<n){dp[i] = Math.min(Math.min(dp[a]*2, dp[b]*3), dp[c]*5);while(dp[a]*2<=dp[i]){a++;}while(dp[b]*3<=dp[i]){b++;}while(dp[c]*5<=dp[i]){c++;}i++;}return dp[n-1];}
}
相关文章:
[leetcode]第 n个丑数
我们把只包含质因子 2、3 和 5 的数称作丑数(Ugly Number)。求按从小到大的顺序的第 n 个丑数。 示例: 输入: n 10 输出: 12 解释: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数。 1 2 3 说明: 1 是丑数。 n 不超过1690。 class Solution {public…...
STM32-电灯,仿真
目录 1.配置vscode 2.新创建软件工程 3.仿真 4.源码 5.运行效果 1.配置vscode http://t.csdnimg.cn/BvCLx 安装 C/C Extension Pack 安装 Embedded IDE 安装 Keil MDK 配置路径 2.新创建软件工程 下拉找到对应的 输入项目名字,选择项目所在文件夹即可 3.仿真 一路新…...
《SpringBoot》系列文章目录
SpringBoot是由Pivotal团队提供的全新框架,旨在简化新Spring应用的初始搭建以及开发过程。以下是一些关于SpringBoot的详细介绍: 设计目的:SpringBoot通过特定的方式来进行配置,使得开发人员不再需要定义样板化的配置,…...
牛客小白月赛94VP
1.签到:https://ac.nowcoder.com/acm/contest/82957/A 下面是AC代码: #include<bits/stdc.h> using namespace std; map<int,int> mp; int main() {for(int i1;i<9;i){int x;cin>>x;mp[i]x;}string s;cin>>s;s s;for(int i…...
php 亚马逊AWS-S3对象存储上传文件
最近做国外项目的时候,需要把文件上传到AWS-S3对象存储空间里,下面整理一下上传方法,和碰到的问题 代码 /*** 亚马逊oss Aws上传* composer require aws/aws-sdk-php* param $filePath* param $ossPath* return array* author wzb* data 202…...
electron-01 基础及NPM相关配置
electron基础 结构 ChromiumNode.jsNative apis 工作流程 启动APP主进程创建windowWin加载界面操作 主进程 package.json中main属性对应的文件一个应用对应一个主进程只有主进程可以进行GUI的API操作 渲染进程 windows中展示的界面通过渲染进程表现一个应用可以有多个渲…...
Foxit PDF Editor Pro福昕PDF编辑器Pro:重塑您的文档编辑体验
在信息爆炸的时代,PDF文件因其跨平台、格式稳定等特性,成为我们日常工作与学习中不可或缺的一部分。然而,面对这些文件时,许多人都会遇到一个共同的难题:如何高效、专业地编辑PDF内容?今天,我要…...
VUE 页面生命周期基本知识点
在 Vue.js 中,页面生命周期(更准确地说是组件生命周期)指的是组件从创建到销毁的一系列过程。了解这些生命周期钩子可以帮助我们更好地管理组件的状态和行为。以下是 Vue 组件的主要生命周期钩子: beforeCreate 在实例初始化之后&…...
windows查看mysql的版本(三种方法)
方法一:在win r 打开 cmd,在cmd命令状态下:mysql --help 回车即可 方法二:在mysql客户端窗口状态下:输入status并回车即可 在计算机开始菜单搜索以上应用打开即可进入mysql客户端窗口。 方法三:在mys…...
Redis批量删除指定前缀的key
在redis-cli中键入命令,批量删除前缀为business_login_tokens:的key: eval "return redis.call(del, unpack(redis.call(keys, ARGV[1])))" 0 business_login_tokens:*在Redis中,EVAL命令用于执行Lua脚本。这个特定的命令是用来批…...
机器学习实验------Adaboost算法
第1关:什么是集成学习 任务描述 本关任务:根据本节课所学知识完成本关所设置的选择题。 第2关: Boosting 任务描述 本关任务:根据本节课所学知识完成本关所设置的选择题。 第3关:Adaboost算法流程 任务描述 本关任务:用Python实现Adaboost,并通过鸢尾花数据集…...
点云处理中阶 Octree模块
一、什么是Octree 八叉树(Octree)是一种用于描述三维空间的树状数据结构。八叉树的每个节点表示一个正方体的体积元素,每个节点有八个子节点,这八个子节点所表示的体积元素加在一起就等于父节点的体积。一般中心点作为节点的分叉中…...
Nginx实现负载均衡与故障检查自动切换
创作灵感来源于个人项目的一个稳定性规划,单节点的项目稳定性方面可能有很大的缺漏,因此需要升级为多节点,保证服务故障后,依然有其他服务可用,不会给前端用户造成影响。 (前面讲选型,想直接看…...
2024年学浪视频怎么下载到手机相册
随着2024年的到来,学浪平台继续为广大学习者提供优质的在线教育资源。然而,如何将这些宝贵的视频内容下载到手机相册,方便随时离线观看呢?无论您是想在旅途中学习,还是希望在没有网络的情况下复习课程,本文…...
【北京市政府网_注册安全分析报告】
前言 由于网站注册入口容易被黑客攻击,存在如下安全问题: 暴力破解密码,造成用户信息泄露短信盗刷的安全问题,影响业务及导致用户投诉带来经济损失,尤其是后付费客户,风险巨大,造成亏损无底洞…...
工作中的冲突,职场人士应如何化解
在职场中,冲突和分歧是不可避免的现象。它们可能来源于工作分配不均、目标不一致、价值观差异或个性不合等。面对这些冲突和分歧,我们需要具备有效的冲突管理技巧来化解问题,以维持团队的和谐与工作效率。 分析冲突的原因至关重要。通常来说&…...
企业级大数据平台建设方案
企业级大数据平台建设方案 方案简介硬件软件分布式存储:Foreman作为集群管理工具Sparkcloudera 方案简介 该方案是多年前在Roadstar.ai任职时的建设方案,现将方案部分细节开源,结合本博客的其他文章,能够建立可靠的企业大数据平台…...
HTML语义化标签:为何它们如此重要?
HTML语义化标签:为何它们如此重要? 引言1. HTML语义化标签的基本概念2. HTML语义化标签的作用2.1 提升网页可读性2.2 增强可访问性2.3 优化搜索引擎排名2.4 提高性能 3. 代码示例结尾讨论 引言 在前端开发的世界里,HTML作为构建网页的基础语…...
详细介绍一下Votenet的工作原理及流程
Votenet是一种基于深度学习的三维目标检测和实例分割方法,其工作原理主要包括两个步骤:候选框生成和目标分类与分割。 1.候选框生成: 首先,Votenet通过将三维点云数据转化为连续的坐标网格,将三维目标检测问题转化为二…...
使用Autofit.js和React实现自适应布局
1. 什么是Autofit.js? Autofit.js是一个用于自适应网页布局的JavaScript库,它可以根据元素的尺寸和屏幕的大小,自动调整布局和排列方式,以适应不同的设备和分辨率。它提供了简单易用的API,可以帮助我们轻松实现各种自…...
Hunyuan-MT-7B企业部署案例:出海SaaS公司集成Pixel Language Portal构建内部翻译中台
Hunyuan-MT-7B企业部署案例:出海SaaS公司集成Pixel Language Portal构建内部翻译中台 1. 项目背景与挑战 随着全球化业务扩张,某出海SaaS公司面临多语言支持的核心痛点: 翻译需求激增:产品文档、用户界面、客服对话等需要支持3…...
背负式静电喷雾机的设计【solidworks三维、5张cad图纸论文、答辩稿】
背负式静电喷雾机作为现代农业装备中的关键设备,其设计需兼顾轻量化、高效性与操作便捷性。通过SolidWorks三维建模技术,可实现整机结构的虚拟装配与干涉检查,优化各部件的空间布局。例如,药箱与喷雾系统的集成设计需平衡容量与重…...
Windows下Power Shell快速激活venv虚拟环境的正确姿势(避坑指南)
Windows下Power Shell快速激活venv虚拟环境的正确姿势(避坑指南) 在Windows平台上使用Python进行开发时,虚拟环境(venv)是隔离项目依赖的必备工具。然而,许多从Linux/macOS转向Windows的开发者,…...
Graphormer一文详解:RDKit+PyG+Gradio技术栈整合与Supervisor服务管理
Graphormer一文详解:RDKitPyGGradio技术栈整合与Supervisor服务管理 1. 项目概述 Graphormer是一种基于纯Transformer架构的图神经网络模型,专门为分子图(原子-键结构)的全局结构建模与属性预测而设计。该模型在OGB、PCQM4M等分…...
深入浅出MIPI D-PHY:对比HS高速模式与LP低功耗模式,揭秘手机摄像头省电又流畅的底层原理
解密MIPI D-PHY:手机摄像头如何实现高速与低功耗的完美平衡 当你用手机拍摄4K视频时,是否想过为什么画面如此流畅,而电量消耗却相对可控?这背后隐藏着一项关键技术——MIPI D-PHY物理层协议。作为现代移动设备图像传输的核心通道&…...
Linux打印机驱动foo2zjs全攻略:从安装到优化的完整指南
Linux打印机驱动foo2zjs全攻略:从安装到优化的完整指南 【免费下载链接】foo2zjs A linux printer driver for QPDL protocol - copy of http://foo2zjs.rkkda.com/ 项目地址: https://gitcode.com/gh_mirrors/fo/foo2zjs 价值定位:解决Linux打印…...
PP-DocLayoutV3参数详解:text/title/table/figure等11类版面区域置信度解析
PP-DocLayoutV3参数详解:text/title/table/figure等11类版面区域置信度解析 1. 引言:为什么版面分析需要“置信度”? 想象一下,你拿到一份扫描的合同,想用OCR(文字识别)把它变成可编辑的电子版…...
告别Keil5刺眼白屏!保姆级教程教你配置VS Code同款暗黑主题(附3套配色方案)
Keil5暗黑主题终极改造指南:从护眼原理到深度定制 凌晨三点的实验室里,显示屏刺眼的白光让我的眼球开始灼烧般疼痛——这是许多嵌入式开发者共同的噩梦。Keil5作为单片机开发的主流工具,其默认的亮色主题在长时间编码时带来的视觉负担远超你的…...
如何让你的论文表达直接提升一个等级
在科研写作的道路上,许多科研人员常陷入一种难以言说的困境:明明实验数据详实,研究过程严谨,但落笔成文后,语言却显得平淡无力。文章往往停留在“描述事实”的层面,仅仅机械地陈述“做了什么”和“发现了什…...
Python自动化脚本:从零构建《三国杀》钓鱼辅助
1. 环境准备:搭建自动化钓鱼的基石 想要实现《三国杀》钓鱼自动化,首先需要搭建一个稳定的开发环境。我推荐使用雷电模拟器9作为游戏运行平台,它不仅对Android游戏兼容性好,而且提供了丰富的调试功能。记得在安装时选择非vivo手机…...
