Ugly Number II
TLE解法:
public class Solution {public int nthUglyNumber(int n) {int count = 0;int i = 1;while(count<n){if(isugly(i)){count++;}i++;}return i;}public boolean isugly(int n){if(n == 1)return true;while(n%2==0)n /= 2;while(n%3 == 0) n/=3;while(n%5==0)n/=5;if(n == 1)return true;elsereturn false;}
}
AC解法:
可以将丑数分成三个队列
l1:1*2,2*2,3*2,4*2,5*2,6*2,8*2……
l2:1*3,2*3,3*3,4*3,5*3,6*3,8*3……
l3:1*5,2*5,3*5,4*5,5*5,6*5,8*5……
每次从三个队列中拿出队头的数比较,最小的数为当前ith的丑数,循环操作直到为i<n,就找到了nth的丑数。代码:
public class Solution {public int nthUglyNumber(int n) {int r = 0;List <Integer> l1 = new LinkedList<Integer>();List <Integer> l2 = new LinkedList<Integer>();List <Integer> l3 = new LinkedList<Integer>();l1.add(1);l2.add(1);l3.add(1);for(int i = 0;i<n;i++){r = l1.get(0)<l2.get(0)?(l1.get(0)<l3.get(0)?l1.get(0):l3.get(0)):(l2.get(0)<l3.get(0)?l2.get(0):l3.get(0));if(l1.get(0)==r)l1.remove(0);if(l2.get(0)==r)l2.remove(0);if(l3.get(0)==r)l3.remove(0);l1.add(r*2);l2.add(r*3);l3.add(r*5);}return r;}
}
转载于:https://www.cnblogs.com/92sunqing/p/5017988.html
Ugly Number II相关推荐
- leetcode 264. Ugly Number II
传送门 264. Ugly Number II QuestionEditorial Solution My Submissions Total Accepted: 36259 Total Submis ...
- LeetCode - Medium - 264. Ugly Number II
Topic Math Dynamic Programming Heap Description https://leetcode.com/problems/ugly-number-ii/ Analys ...
- Lintcode 4 Ugly Number II
原题如下: Ugly number is a number that only have factors 2, 3 and 5. Design an algorithm to find the nth ...
- LeetCode Ugly Number II(丑数的计算)
代码如下: public class Solution {public int nthUglyNumber(int n) {int[] primes = {2, 3, 5};int[] idx = n ...
- [leetcode] Ugly Number II
public class Solution { public int nthUglyNumber(int n) { int[] ugly=new int[n+10]; ...
- Leetcode264. Ugly Number II丑数2
编写一个程序,找出第 n 个丑数. 丑数就是只包含质因数 2, 3, 5 的正整数. 示例: 输入: n = 10 输出: 12 解释: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 ...
- leetcode 263, 264, 1201, 313. Ugly Number I, II, III, Super Ugly Number(leetcode 丑数问题合集)
263. Ugly Number https://leetcode.com/problems/ugly-number/ 本题题解由下面的 264. Ugly Number II 改造而来,所以效率会比 ...
- LeetCode 264. Ugly Number II--C++,Python解法
题目地址:Ugly Number II - LeetCode Write a program to find the n-th ugly number. Ugly numbers are positi ...
- Super Ugly Number
1. 解析 这道题Ugly Number II 的升级版,题目大意,求解第n个super Ugly Number,super Ugly Number(除1之外)的因子只存在因子列表primes中,换汤 ...
- 263.Ugly Number||202 happy number||476 Number Complement||136 Single Number
263.Ugly Number 判断因数是否只有素数2.3.5.. 感觉比较简单: class Solution(object):def isUgly(self, num):""& ...
最新文章
- 基于sharepoint 2003的内容管理1.0
- 用计算机怎么开5次方,用科学计算器来求三的五次方的值,按键顺序是( )?
- Spring Session使用
- 代码示例:使用redis计数来控制单位时间内对某接口的访问量
- ubuntu20.04运行海商王2
- 如何利用echarts图表获取条状图点击名称和值
- pygame做的著名游戏_用Python和Pygame写游戏-从入门到放弃(1)
- python watchdog休眠_python watchdog
- 从单机到2000万QPS: 知乎Redis平台发展与演进之路
- 模拟赛 10-14考试再次翻车记
- 人工智能在fpga的具体应用_“基于FPGA的人工智能应用技术师资培训”圆满落幕!...
- android 自定义banner样式_Android中Banner的指示器自定义View
- 五百兆电信宽带玩穿越火线,电信区,延时卡70到80怎么回事,换的千兆猫和路由器,线都是六类?
- linux mysql 保护_linux – 在Puppet中,我如何保护密码变量(在这种情况下是MySQL密码)?...
- Rapid Tampere加速联合产业创新
- vue学习之ElementUI时间选择器报错getTime is not a function
- ag-gird 多层表头文字居中
- python相关性分析模型,相关性分析原理及Python实战
- Dango 之认证组件Auth模块
- 三本 计算机专业,四川哪些三本大学的计算机专业最好?
热门文章
- JAVA 泛型 入门
- ubuntu 17.x/CentOS 7.x中安装JAVA JDK
- Spring Boot 整合 Kafka 分布式消息系统快速入门
- 无法显示此网页 php模拟,新手进行php的模拟登录 按照网页的代码进行输入无法显示结果...
- php rsa2 微博,微博登录分析
- jquery富文本编译器_jQuery 移动端artEditor富文本编辑器
- LayuiAdmin 滚动条设置问题解决
- Redis常见的面试题
- 并不对劲的AC自动机
- LeetCode Student Attendance Record I