python 中用来检查给定数字是否是水仙花数的程序


假设我们有一个数字 n;我们必须检查它是否等于 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

更新于:06-Oct-2020

652 观看

开启你的 职业

完成课程,获得认证

开始
广告