Description
将1,2, ,9,共9个数分成3组,分别组成3个三位数,且使这3个三位数构成1:2:3的比例,试求出所有满足条件的3个三位数。
输入输出样例
输出格式
若干行,每行33个数字。按照每行第11个数字升序排列。
输出 #1
192 384 576
* * *
...
* * *
(输出被和谐了)
Solution
- 用数组记录1~9每个数是否被使用过
- 对于一个三位数
a
:百位数字:a/100
, 十位数字:a/10%10
, 个位数字:a%10
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) {
for(int a = 123;a<333;a++) {
int sum = 0;
int d[] = new int[11]; // a/100 : 百位,a%10: 个位:a % 10
d[a/100] = d[a%10] = d[a/10%10] = d[a*2/100] = d[a*2%10] = d[a*2/10%10] = d[a*3/100] = d[a*3%10] = d[a*3/10%10] = 1;
for(int i = 1;i<10;i++) {
sum+=d[i];
}
if(sum == 9)
System.out.printf("%d %d %d\n",a,a*2,a*3);
}
}
}