0
点赞
收藏
分享

微信扫一扫

【Leetcode】每日一题:自除数

梦为马 2022-03-31 阅读 176

自除数

AC代码

class Solution:
    def selfDividingNumbers(self, left: int, right: int) -> List[int]:
        return [n for n in range(left, right + 1) if self.isFlag(n)]

    def isFlag(self, n):
        if '0' in str(n):
            return False
        t = n % 10
        m = n
        while t != 0:
            if n % t != 0:
                return False
            else:
                m = m // 10
                t = m % 10
        return True

官方代码

class Solution:
    def selfDividingNumbers(self, left: int, right: int) -> List[int]:
        def isSelfDividing(num: int) -> bool:
            x = num
            while x:
                x, d = divmod(x, 10)
                if d == 0 or num % d:
                    return False
            return True
        return [i for i in range(left, right + 1) if isSelfDividing(i)]
# 作者:LeetCode-Solution

一个做法,简单题里属于思路单纯的

举报

相关推荐

0 条评论