【发布时间】:2017-07-05 08:22:33
【问题描述】:
如何有效地计算前三位等于后三位的零填充六位数字?
我的解决方案是这样的。但这不是有效的解决方案。我必须找到最好的方法
public class TicketNumber {
public static void main(String[] args) {
int i1, i2, i3, i4, i5, i6, count = 0;
String str="";
for (i1 = 0; i1 <= 9; i1++) {
for (i2 = 0; i2 <= 9; i2++) {
for (i3 = 0; i3 <= 9; i3++) {
for (i4 = 0; i4 <= 9; i4++) {
for (i5 = 0; i5 <= 9; i5++) {
for (i6 = 0; i6 <= 9; i6++) {
if ((i1+i2+i3) == (i4+i5+i6)) {
count++;
}
}
}
}
}
}
}
System.out.println(count);
}
}
我应该打印 000000-999999 之间与 i1+i2+i3 = i4+i5+i6 条件兼容的所有数字
【问题讨论】:
-
或者等等,你在这里想要做什么有点模棱两可?例如,
100000之后是什么? -
试试
IntStream.range(0, 999999).forEach(i -> System.out.printf("%06d%n", i)); -
这是家庭作业吗?
-
人,这根本不是重复的...... :-/
-
这令人困惑,您的代码不会像示例中所示的那样计算 000001...
标签: java permutation