【题目】
1~9的数字可以组成3个3位数,设为:A,B,C, 现在要求满足如下关系:
B = 2 * A
C = 3 * A
请你写出A的所有可能答案,数字间用空格分开,数字按升序排列。
注意:只提交A的值,严格按照格式要求输出。
【分析】
很明显A的取值范围是111~333,那么在这个区间里面,还要考虑,A、B、C里面不能包含0,最后再考虑的问题是A、B、C三个数字连起来组成的字符串经过排序应该是"123456789"。
【源码】
public class Test004 {
public static void main(String[] args) {
for(int a=111; a<=333; a++){
if(hasZero(a)){
continue;
}else{
int b = 2*a;
int c = 3*a;
if(hasZero(b) || hasZero(c)){
continue;
}
String s = "" + a + b+ c;
if(isFind(s)){
System.out.print(a + " ");
}
}
}
}
private static boolean hasZero(int n){
return String.valueOf(n).contains("0");
}
private static boolean isFind(String x){
char[] arr = x.toCharArray();
Arrays.sort(arr);
return "123456789".equals(String.valueOf(arr));
}
}
【结果】
192
219
273
327