LeetCode刷题笔记263:丑数(Python实现)
2019-05-15 18:40
274 查看
题目描述:
编写一个程序判断给定的数是否为丑数。
丑数就是只包含质因数
2, 3, 5的正整数。
示例 1:
输入: 6 输出: true 解释: 6 = 2 × 3
示例 2:
输入: 8 输出: true 解释: 8 = 2 × 2 × 2
示例 3:
输入: 14 输出: false 解释:14不是丑数,因为它包含了另外一个质因数7。
说明:
1
是丑数。- 输入不会超过 32 位有符号整数的范围: [−231, 231 − 1]。
Solution:
当num=1时,返回True,当num<1时,返回False
当num>1时:运用递归,如果num能被2或3或5整除时,则返回原函数,一直除到num=1时则返回True,如果其他,则返回False
[code]class Solution(object): def isUgly(self, num): """ :type num: int :rtype: bool """ if num == 1: return True if num < 1: return False if num % 2 == 0: return self.isUgly(num / 2) if num % 3 == 0: return self.isUgly(num / 3) if num % 5 == 0: return self.isUgly(num / 5) return False
相关文章推荐
- leetcode的python实现 刷题笔记14:最长公共前缀
- leetcode的python实现 刷题笔记70:爬楼梯(动态规划)
- leetcode的python实现 刷题笔记28:实现strStr()
- leetcode的python实现 刷题笔记74:搜索二维矩阵(二分查找的思想)
- LeetCode刷题笔记342:4的幂(Python实现)
- LeetCode刷题笔记5:最长回文子串(Python实现)
- leetcode(263,389) python实现
- leetcode的python实现 刷题笔记13: 罗马数字转整数
- LeetCode刷题笔记53:最大子序和(Python实现)
- LeetCode刷题笔记1041:困于环中的机器人(Python实现)
- leetcode的python实现 刷题笔记9:回文数 暴力解法和进阶算法
- leetcode的python实现 刷题笔记26:删除排序数组中的重复项
- leetcode的python实现 刷题笔记53:最大子序和(多种解法)
- leetcode的python实现 刷题笔记58:最后一个单词的长度(取巧的做法和全网最正确的做法)
- LeetCode刷题笔记985:查询后的偶数和(Python实现)
- LeetCode刷题笔记82: 删除排序链表中的重复元素 II(Python实现)
- leetcode的python实现 刷题笔记35:搜索插入位置的暴力解法和优化解法
- leetcode的python实现 刷题笔记7: 反转整数
- leetcode的python实现 刷题笔记27:移除元素
- leetcode 【 Sort Colors 】python 实现