我是靠谱客的博主 冷酷微笑,最近开发中收集的这篇文章主要介绍数字不同数之和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中写...所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部