问题描述
|
我正在尝试为Kaprekar数写一个快速解决方案,以向我的一个朋友展示在Python中实现这样的事情有多么容易。我知道如何执行所有步骤,除了将平方数作为字符串迭代。例如45是一个Kaprekar数,因为
45 ** 2 = 2025和20 + 25 = 45
我要编写的代码将采用45 ** 2 = 2025的结果,并让我遍历类似的组合
[\'2 \',\'025 \']
[\ '20 \',\ '25 \']
[\'202 \',\'5 \']
解决方法
>>> s = \'2025\'
>>> for i in range(1,len(s)):
... print s[:i],s[i:]
...
2 025
20 25
202 5
, 我将在炼狱中多花几天时间回答Ignacio已经回答的数学问题,但是您也可以尝试以下方法:
>>> a = 2025
>>> for i in range(1,4):
... print a / 10**i,a % 10**i
...
202 5
20 25
2 25