黑洞数又称陷阱数,是类具有奇特转换特性的整数。任何一个数字不全相同整数,经有限“重排求差”操作,总会得某一个或一些数,这些数即为黑洞数。“重排求差”操作即把组成该数的数字重排后得到的最大数减去重排后得到的最小数 ------- 摘自百度百科
如下例:
--------------------- 三位数的黑洞数 ----------------------------
203: 320 - 023 = 297
297: 972 - 279 = 693
693: 963 - 369 = 594
594: 954 - 459 = 495
495: 954 - 459 = 495 # 495 是3位数的黑洞数
611: 611 - 116 = 495
495: 954 - 459 = 495 # 495 是3位数的黑洞数
---------------------- 四位数的黑洞数 ----------------------------
1003: 3100 - 0013 = 3087
3087: 8730 - 0378 = 8352
8352: 8532 - 2358 = 6174
6174: 7641 - 1467 = 6174 # 6174是4位数的黑洞数
9876: 9876 - 6789 = 3087
3087: 8730 - 0378 = 8352
8352: 8532 - 2358 = 6174
6174: 7641 - 1467 = 6174 # 6174是4位数的黑洞数
# 五位数及其以上的黑洞数不只一个,而是几个数字循环出现,这里就不求了
下面的代码是通过递归获取一个数字的黑洞