第一题 数位之积
现给定任意正整数 n,请寻找并输出最小的正整数 m(m>9),使得 m 的各位(个位、十位、百位 … …)之乘积等于n,若不存在则输出 -1。二、使用步骤
/**
* 输入一个整形数值,返回一个整形值
* @param n int整型 n>9
* @return int整型
*/
public int solution (int n) {
int sum=0;
int key=1;
for(int i=9;i>1;i--){
while(n%i==0){
n/=i;
sum+=key*i;
key*=10;
}
}
return n==1?sum:-1;
}
第二题 手机产量
/**
* 输入一个整形数值,返回一个整形值
* @param n int整型 n>9
* @return int整型
*/
public int solution (int n) {
int sum=0;
int key=1;
for(int i=9;i>1;i--){
while(n%i==0){
n/=i;
sum+=key*i;
key*=10;
}
}
return n==1?sum:-1;
}