1. 题目
读题
数位之积(AC)
现给定任意正整数 n,请寻找并输出最小的正整数 m(m>9),使得 m 的各位(个位、十位、百位 … …)之乘积等于n,若不存在则输出 -1。
考查点
2. 解法
思路
思路:让n除以从9 - 2的,如果整除:n变为n / i递归,并且将i放入list集合中
代码逻辑
具体实现
public class MutliSum {
public static void main(String[] args) {
System.out.println(findMinSum(100));
System.out.println(findMinSum(36));
System.out.println(findMinSum(17));
}
public static int findMinSum(int n) {
List<Integer> list = new ArrayList<>();
//是否可以被9到2整除
boolean flag = true;
while (n != 1 && flag) {
for (int i = 9; i >= 2; i--) {
if (n % i == 0) {
list.add(i);
n = n / i;
break;
}
if (i == 2 && n % i != 0) {
flag = false;
}
}
}
if (list.size() == 0) {
return -1;
}
int sum = 0;
for (int i = list.size() - 1; i >= 0; i--) {
sum = sum * 10 + list.get(i);
}
return sum;
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
2022-07-18 mysql字符串函数详解
2022-07-18 mysql中的行转列,列转行
2021-07-18 IDEA git 切换分支注意事项