#171. 三位黑洞数

三位黑洞数

三位黑洞数

题目描述

黑洞数也称为陷阱数,又称“Kaprekar问题”,是一类具有奇特转换特性的数。任何一个各位数字不全相同的三位数,经有限次“重排求差”操作,总会得到 495495。最后所得的 495495 即为三位黑洞数。所谓“重排求差”操作即组成该数的数字重排后的最大数减去重排后的最小数。(61746174 为四位黑洞数。)

例如,对三位数 207207

11 次重排求差得:72027=693720 - 27 = 693; 第 22 次重排求差得:963369=594963 - 369 = 594; 第 33 次重排求差得:954459=495954 - 459 = 495; 以后会停留在 495495 这一黑洞数。如果三位数的 33 个数字全相同,一次转换后即为 00

任意输入一个三位数,编程给出重排求差的过程。

输入格式

输入在一行中给出一个三位数。

输出格式

按照以下格式输出重排求差的过程:

序号: 数字重排后的最大数 - 重排后的最小数 = 差值

序号从 11 开始,直到 495495 出现在等号右边为止。

样例输入

123

样例输出

1: 321 - 123 = 198
2: 981 - 189 = 792
3: 972 - 279 = 693
4: 963 - 369 = 594
5: 954 - 459 = 495

样例解释

输入的三位数是 123123。首先将数字 112233 重排得到最大数 321321 和最小数 123123,相减得到 198198。然后对 198198 重复操作:重排得最大数 981981 和最小数 189189,相减得 792792。继续操作,依次得到 693693594594,最终得到 495495,过程结束。

数据范围

输入的三位数满足 100n999100 \le n \le 999