现给定任意正整数 n,请寻找并输出最小的正整数 m(m>9),使得 m 的各位(个位、十位、百位 … …)之乘积等于n,若不存在则输出 -1。
import java.util.*;
public class Solution {
/**
* 输入一个整形数值,返回一个整形值
* @param n int整型 n>9
* @return int整型
*/
public int solution (int n) {
// write code here
int m=0,a=1;
for(int i = 9;i>1;i--){
if(n%i==0){
m=m+i*a;
n/=i;
i=10;
a*=10;
}
}
if(n!=1){
return -1;
}
return m;
}
}
这道题不难,把十以内最大的因子放在后一位