Back to all solutions
#728 - Self Dividing Numbers
Problem Description
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.
A self-dividing number is not allowed to contain the digit zero.
Given two integers left and right, return a list of all the self-dividing numbers in the range [left, right] (both inclusive).
Solution
/**
* @param {number} left
* @param {number} right
* @return {number[]}
*/
var selfDividingNumbers = function(left, right) {
return Array.from({ length: right - left + 1 }, (_, i) => left + i)
.filter(n => String(n).split('').every(d => d !== '0' && n % d === 0));
};