数学黑洞6174 已知:一个任意的四位正整数。将数字重新组合成一个最大的数和最小的数 相减,重复这个过程,最多七步,必得6174。即:7641-1467=6174。将永远出不 来。 求证:所有四位数数字(全相同的除外),均能得到6174。输出掉进黑洞的 步数。
public static int demo13(int n) {
int max, min;
if (n < 1000) {
return -1;
}
if (n == 6174) {
return 1;
} else {
int[] numbers = new int[4];
numbers[0] = n % 10;
numbers[1] = n / 10 % 10;
numbers[2] = n / 100 % 10;
numbers[3] = n / 1000;
for (int i = 0; i < numbers.length; i++) {
for (int j = 0; j < numbers.length - i - 1; j++) {
if (numbers[j] > numbers[j + 1]) {
int temp = numbers[j];
numbers[j] = numbers[j + 1];
numbers[j + 1] = temp;
}
}
}
min = numbers[0] * 1000 + numbers[1] * 100 + numbers[2] * 10 + numbers[3] * 1;
for (int i = 0; i < numbers.length; i++) {
for (int j = 0; j < numbers.length - i - 1; j++) {
if (numbers[j] < numbers[j + 1]) {
int temp = numbers[j];
numbers[j] = numbers[j + 1];
numbers[j + 1] = temp;
}
}
}
max = numbers[0] * 1000 + numbers[1] * 100 + numbers[2] * 10 + numbers[3] * 1;
return 1 + demo13(max - min);
}
}