题目来源
题目描述
题目解析
模拟
public static List<Integer> selfDividingNumbers(int left, int right) {
List<Integer> list = new ArrayList<>();
for (int i = left; i <= right; i++){
if (isDivisionMath(i)){
list.add(i);
}
}
return list;
}
private static boolean isDivisionMath(int n){
if (n == 0){
return false;
}
int num = n;
while (num > 0){
if (num % 10 == 0 || n % (num % 10) != 0){
return false;
}
num = num / 10;
}
return true;
}
public static void main(String[] args) {
System.out.println(selfDividingNumbers( 1, 22));
}