263. Ugly Number [easy] (Python)
来源:互联网 发布:手机淘宝怎么用集分宝 编辑:程序博客网 时间:2024/06/15 21:23
题目链接
https://leetcode.com/problems/ugly-number/
题目原文
Write a program to check whether a given number is an ugly number.
Ugly numbers are positive numbers whose prime factors only include
2, 3, 5
. For example,6
,8
are ugly while14
is not ugly since it includes another prime factor7
.Note that
1
is typically treated as an ugly number.
题目翻译
编程判断一个给定的数是否是“ugly number”。
所谓“ugly number”是指质因数仅包含在 2,3,5 中的正数。比如,6和8都是“ugly number”,而14不是,因为14包含7这个质因数。
注意,1 也被认为是”ugly number”。
思路方法
思路一
根据定义,依次将所给的数除以 2,3,5 直至无法除尽,如果这时得到1则说明所给的数的质因子不超出2,3,5三个数,否则说明有其他质因数。
代码一
class Solution(object): def isUgly(self, num): """ :type num: int :rtype: bool """ if num <= 0: return False for i in [2, 3, 5]: while num%i == 0: num = num / i return True if num == 1 else False
思路不变,该题不用迭代法而用递归也可以实现。
代码二
class Solution(object): def isUgly(self, num): """ :type num: int :rtype: bool """ if num <= 0: return False if num == 1: return True if num % 2 == 0: return self.isUgly(num/2) elif num % 3 == 0: return self.isUgly(num/3) elif num % 5 == 0: return self.isUgly(num/5) else: return False
思路二
考虑到输入是int,python对于大整数的处理非常方便,可以用非常短的代码解决该问题。
对于一个 int 型的 ugly number,
所以一定有,若
代码
class Solution(object): def isUgly(self, num): """ :type num: int :rtype: bool """ return num > 0 == 30**30 % num
PS: 新手刷LeetCode,新手写博客,写错了或者写的不清楚还请帮忙指出,谢谢!
转载请注明:http://blog.csdn.net/coder_orz/article/details/51317748
- 263. Ugly Number [easy] (Python)
- [leetcode][easy]263. Ugly Number
- 263. Ugly Number 难度:easy
- Easy-题目19:263. Ugly Number
- Leetcode 263. Ugly Number (Easy) (cpp)
- 【LeetCode】(263)Ugly Number(Easy)
- leetcode 263[easy]---Ugly Number
- Leet Code OJ 263. Ugly Number [Difficulty: Easy]
- <LeetCode><Easy>263 Ugly Number (因式分解)
- 263. Ugly Number && 264. Ugly Number II
- leetcode(12),Ugly Number(python)
- [leetcode] 263.Ugly Number
- 263. Ugly Number
- 263. Ugly Number
- 263. Ugly Number
- 263. Ugly Number
- 263. Ugly Number
- 263. Ugly Number
- poj 2079(旋转卡壳)
- Android 内功心法(1.1)——android常用设计模式之单例模式
- OC6(小东西)
- 自定义控件三部曲之绘图篇(十三)——Canvas与图层(一)
- [leetcode] 70. Climbing Stairs
- 263. Ugly Number [easy] (Python)
- 编程珠玑
- POJ 1375 Intervals
- Java学习笔记之内部类和异常类、匿名类
- list
- HDU 2212 DFS (伪·DFS)
- 邮箱正则表达式 和谐文字 图片上传重命名
- linux基本命令(13)——less命令
- 子网掩码与IP地址;网关;DNS域名服务器;DHCP;