我是靠谱客的博主 冷酷微笑,最近开发中收集的这篇文章主要介绍数字不同数之和python_检查数字的程序可以写为不同阶乘数的总和,也可以不在Python中写...,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
假设我们有一个正数n,我们必须检查n是否可以写成唯一的正阶乘数之和。
因此,如果输入像n = 144,那么输出将为True,为4!+ 5!= 24 + 120 = 144
为了解决这个问题,我们将遵循以下步骤-事实:= 1
res:=一个新列表
x:= 2
而事实<= n,在res的末尾插入事实
事实:=事实* x
x:= x + 1
对于范围-1到0的i,将i减小1,n:= n-res [i]
如果n> = res [i],则
当n等于0时返回true
让我们看下面的实现以更好地理解-
示例class Solution:
def solve(self, n):
fact = 1
res = []
x = 2
while fact <= n:
res.append(fact)
fact = fact * x
x += 1
for i in range(len(res)-1,-1,-1):
if n>=res[i]:
n-=res[i]
return n==0
ob = Solution()print(ob.solve(144))
输入值144
输出结果True
最后
以上就是冷酷微笑为你收集整理的数字不同数之和python_检查数字的程序可以写为不同阶乘数的总和,也可以不在Python中写...的全部内容,希望文章能够帮你解决数字不同数之和python_检查数字的程序可以写为不同阶乘数的总和,也可以不在Python中写...所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复