用 Python 编写程序检查给定数字是否为自恋数字

pythonserver side programmingprogramming更新于 2026/1/11 3:56:17

假设我们有一个数字 n;我们必须检查它是否等于 n 的数字之和的位数次方。

因此,如果输入为 9474,则输出将为 True,即 9^4 + 4^4 + 7^4 + 4^4 = 6561 + 256 + 2401 + 256 = 9474。

为了解决这个问题,我们将遵循以下步骤 −

  • s := n 中的数字列表
  • 如果 n 与 s 中所有 x 的 x*(s 的大小) 之和相同,则返回 true,否则返回 false

让我们看看下面的实现以便更好地理解 −

示例

class Solution:
   def solve(self, n):
      s=str(n)
      return n==sum(int(x)**len(s) for x in s)
ob = Solution()
print(ob.solve(9474))

输入

9474

输出

True

相关文章


有用资源