728:自除数
This commit is contained in:
parent
443a60fa43
commit
82099f4c9e
73
src/main/java/leetcode/editor/cn/SelfDividingNumbers.java
Normal file
73
src/main/java/leetcode/editor/cn/SelfDividingNumbers.java
Normal file
@ -0,0 +1,73 @@
|
||||
//自除数 是指可以被它包含的每一位数整除的数。
|
||||
//
|
||||
//
|
||||
// 例如,128 是一个 自除数 ,因为 128 % 1 == 0,128 % 2 == 0,128 % 8 == 0。
|
||||
//
|
||||
//
|
||||
// 自除数 不允许包含 0 。
|
||||
//
|
||||
// 给定两个整数 left 和 right ,返回一个列表,列表的元素是范围 [left, right] 内所有的 自除数 。
|
||||
//
|
||||
//
|
||||
//
|
||||
// 示例 1:
|
||||
//
|
||||
//
|
||||
//输入:left = 1, right = 22
|
||||
//输出:[1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 15, 22]
|
||||
//
|
||||
//
|
||||
// 示例 2:
|
||||
//
|
||||
//
|
||||
//输入:left = 47, right = 85
|
||||
//输出:[48,55,66,77]
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
// 提示:
|
||||
//
|
||||
//
|
||||
// 1 <= left <= right <= 10⁴
|
||||
//
|
||||
// Related Topics 数学 👍 185 👎 0
|
||||
|
||||
package leetcode.editor.cn;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
//728:自除数
|
||||
public class SelfDividingNumbers {
|
||||
public static void main(String[] args) {
|
||||
Solution solution = new SelfDividingNumbers().new Solution();
|
||||
// TO TEST
|
||||
}
|
||||
|
||||
//leetcode submit region begin(Prohibit modification and deletion)
|
||||
class Solution {
|
||||
public List<Integer> selfDividingNumbers(int left, int right) {
|
||||
List<Integer> list = new ArrayList<>();
|
||||
for (int i = left; i <= right; i++) {
|
||||
if (isSelfDivid(i)) {
|
||||
list.add(i);
|
||||
}
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
private boolean isSelfDivid(int num) {
|
||||
int tmp = num;
|
||||
while (tmp >= 10) {
|
||||
if (tmp % 10 == 0 || num % (tmp % 10) > 0) {
|
||||
return false;
|
||||
}
|
||||
tmp /= 10;
|
||||
}
|
||||
return num % tmp == 0;
|
||||
}
|
||||
}
|
||||
//leetcode submit region end(Prohibit modification and deletion)
|
||||
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
<p><strong>自除数</strong><em> </em>是指可以被它包含的每一位数整除的数。</p>
|
||||
|
||||
<ul>
|
||||
<li>例如,<code>128</code> 是一个 <strong>自除数</strong> ,因为 <code>128 % 1 == 0</code>,<code>128 % 2 == 0</code>,<code>128 % 8 == 0</code>。</li>
|
||||
</ul>
|
||||
|
||||
<p><strong>自除数</strong> 不允许包含 0 。</p>
|
||||
|
||||
<p>给定两个整数 <code>left</code> 和 <code>right</code> ,返回一个列表,<em>列表的元素是范围 <code>[left, right]</code> 内所有的 <strong>自除数</strong></em> 。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>示例 1:</strong></p>
|
||||
|
||||
<pre>
|
||||
<strong>输入:</strong>left = 1, right = 22
|
||||
<strong>输出:</strong>[1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 15, 22]
|
||||
</pre>
|
||||
|
||||
<p><strong>示例 2:</strong></p>
|
||||
|
||||
<pre>
|
||||
<b>输入:</b>left = 47, right = 85
|
||||
<b>输出:</b>[48,55,66,77]
|
||||
</pre>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= left <= right <= 10<sup>4</sup></code></li>
|
||||
</ul>
|
||||
<div><div>Related Topics</div><div><li>数学</li></div></div><br><div><li>👍 185</li><li>👎 0</li></div>
|
Loading…
Reference in New Issue
Block a user