资讯专栏INFORMATION COLUMN

8.leetcode Self Dividing Numbers

付永刚 / 1514人阅读

摘要:题目例子我的解法其他解法这个方法不用转化成字符串,直接得到的数再除

1. 题目

A self-dividing number is a number that is divisible by every digit it contains.

For example, 128 is a self-dividing number because 128 % 1 == 0, 128 % 2 == 0, and 128 % 8 == 0.

Also, a self-dividing number is not allowed to contain the digit zero.

Given a lower and upper number bound, output a list of every possible self dividing number, including the bounds if possible.

例子
Input: 
left = 1, right = 22
Output: [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 15, 22]
2. 我的解法
var selfDividingNumbers = function(left, right) {
    let output = []
    while (left <= right) {
        const tempList = left.toString().split("")
        if(tempList.every( v => left  % v === 0) && !tempList.includes("0")) {
            output = [...output, left]
        } 
        left ++
    }
    return output
    
};
Runtime: 68 ms, faster than 69.27% of JavaScript online submissions for Self Dividing Numbers.
Memory Usage: 37.8 MB, less than 35.48% of JavaScript online submissions for Self Dividing Numbers
3. 其他解法
var selfDividingNumbers = function(left, right) {
    let r,d;
    const nums = [];

    for (let num=left; num<=right; num+=1) {
      d=num;
      r=num%10;
      while (r && !(num%r)) {
        d=Math.floor(d/10);
        r=d%10;
      }
      if (d===0) nums.push(num);
    }
    return nums;
};

这个方法不用转化成字符串,直接得到的数再除

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/103496.html

相关文章

  • Leetcode PHP题解--D30 728. Self Dividing Numbers

    摘要:题目链接题目分析如果一个数字能被其中的每一位整除,那么这个数字被称为自整除数。思路首先,小于的数都能被每一位整除。若在遍历每一位数字时,遇到,则直接跳过当前数字。能整除的数字就直接存入一个数组当中,用于返回。 728. Self Dividing Numbers 题目链接 728. Self Dividing Numbers 题目分析 如果一个数字能被其中的每一位整除,那么这个数字被称...

    Eidesen 评论0 收藏0
  • 以太坊开发实战学习-合约安全(八)

    摘要:合约安全增强溢出和下溢我们将来学习你在编写智能合约的时候需要注意的一个主要的安全特性防止溢出和下溢。实战演练给加上一些标签把这里变成标准的注释把一个管理转移僵尸所有权的合约符合对标准草案的实现 通过上一节的学习,我们完成了 ERC721 的实现。并不是很复杂,对吧?很多类似的以太坊概念,当你只听人们谈论它们的时候,会觉得很复杂。所以最简单的理解方式就是你自己来实现它。 一、预防溢出 不...

    UsherChen 评论0 收藏0
  • python学习笔记-魔术方法,让自定义类更像内置类型

    摘要:的魔术方法是中那些预定义的像类型的函数。使用的魔术方法的最大优势在于提供了简单的方法让对象可以表现得像内置类型一样。廖雪峰老师教程里写的是方法,不知道为啥。 Python的魔术方法是Python中那些预定义的像__XXX__类型的函数。使用Python的魔术方法的最大优势在于python提供了简单的方法让对象可以表现得像内置类型一样。 __str__函数 __str__函数用于处理打印...

    changfeng1050 评论0 收藏0
  • leetcode-29. Divide Two Integers

    摘要:题目解析用加减法实现除法用减法,每次累加被减部分,累加商,以一个固定的倍数递增坑注意循环的跳出便捷,的情况要注意。应用累加思想,可以用在提速上,效率提高如果,则是负的,则是正的 题目解析: 用加减法实现除法 用减法,每次累加被减部分,累加商, 以一个固定的倍数递增 坑: 注意 while循环的跳出便捷,= 的情况要注意。应用:累加思想,可以用在提速上,效率提高 Given two ...

    darkbaby123 评论0 收藏0
  • 2. Add Two Numbers

    摘要:问题过程先算出每个链表代表的数字,进行相加然后再把得数转换为链表形式 问题 You are given two non-empty linked lists representing two non-negative integers. The digits are stored in reverse order and each of their nodes contain a si...

    zhangfaliang 评论0 收藏0

发表评论

0条评论

付永刚

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<