阶乘和数(python3)

2023-10-31

【问题描述】

一个正整数如果等于组成它的各位数字的阶乘之和,则该正整数称为阶乘和数。例如正整数145,1!+4!+5!等于145,因此145就是一个阶乘和数。输入一个正整数,计算它的各位数字的阶乘之和,并判断它是否是一个阶乘和数。注意:输入的正整数,以及组成它的各位数字的阶乘之和都不会超过int类型的表示范围,并且输入的正整数的最高位不为0。

【输入形式】

从控制台输入一个正整数。

【输出形式】

先输出输入的正整数和一个逗号",",并从个位开始输出组成该正整数的各位数字的阶乘(阶乘计算结果)相加的形式,然后输出等号"="和各位数字阶乘之和,最后在下一行输出字符串"Yes"表示该正整数是阶乘和数,否则输出字符串"No"表示该正整数不是阶乘和数。

【输入样例1】

145

【输出样例1】

145,120+24+1=145
Yes

【输入样例2】

1400
【输出样例2】

1400,1+1+24+1=27
No

【输入样例3】

4

【输出样例3】

4,24=24
No

【样例说明】

样例1中输入的正整数为145,其个位为5,5的阶乘为120,十位为4,4的阶乘为24,百位为1,1的阶乘为1,这些阶乘之和为145,所以145为阶乘和数。样例2中输入的正整数为1400,组成它的各位数字的阶乘之和为27,所以1400不是阶乘和数。样例3中输入的正整数为4,组成它的只有一位数字,其阶乘为24,也不是阶乘和数。

【代码】
```py
def f(n):
    sum = 1
    for i in range(1, n + 1):
        sum *= i
    return sum


if __name__ == '__main__':
    n = input()
    l = list(n)
    l.reverse()
    n = int(n)
    sum = 0
    print("%d," % n, end='')
    for i in range(len(l)):
        l[i] = f(int(l[i]))
        sum += l[i]
        if i == 0:
            print("%d" % l[i], end='')
        else:
            print("+%d" % l[i], end='')
    print("=%d" % sum)
    if n == sum:
        print("Yes")
    else:
        print("No")

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

阶乘和数(python3) 的相关文章

  • 如何计算 pandas datetime 对象的均值和方差?

    如何计算 YYYY MM DD 形式的 python 日期时间对象的汇总统计数据 均值和标准差 我想对具有不同 ID 的不同日期时间对象组执行此操作 数据如下 import datetime as dt df pd DataFrame Da
  • 如何传递架构以从现有数据帧创建新数据帧?

    要将 schema 传递到 json 文件 我们这样做 from pyspark sql types import StructField StringType StructType IntegerType data schema Stru
  • Gunicorn 工作人员无论如何都会超时

    我正在尝试通过gunicorn运行一个简单的烧瓶应用程序 但是无论我做什么 我的工作人员都会超时 无论是否有针对应用程序的活动 工作人员在我设置任何内容后总是会超时timeout值到 是什么导致它们超时 当我发出请求时 请求成功通过 但工作
  • matplotlib 图中点的标签

    所以这是一个关于已发布的解决方案的问题 我试图在我拥有的 matplotlib 散点图中的点上放置一些数据标签 我试图在这里模仿解决方案 是否有与 MATLAB 的 datacursormode 等效的 matplotlib https s
  • pandas DataFrame.join 的运行时间是多少(大“O”顺序)?

    这个问题更具概念性 理论性 与非常大的数据集的运行时间有关 所以我很抱歉没有一个最小的例子来展示 我有一堆来自两个不同传感器的数据帧 我需要最终将它们连接成两个very来自两个不同传感器的大数据帧 df snsr1 and df snsr2
  • 多输出堆叠回归器

    一次性问题 我正在尝试构建一个多输入堆叠回归器 添加到 sklearn 0 22 据我了解 我必须结合StackingRegressor and MultiOutputRegressor 经过多次尝试 这似乎是正确的顺序 import nu
  • 如何从Python中的函数返回多个值? [复制]

    这个问题在这里已经有答案了 如何从Python中的函数返回多个变量 您可以用逗号分隔要返回的值 def get name you code return first name last name 逗号表示它是一个元组 因此您可以用括号将值括
  • python multiprocessing 设置生成进程等待

    是否可以生成一些进程并将生成进程设置为等待生成的进程完成 下面是我用过的一个例子 import multiprocessing import time import sys def daemon p multiprocessing curr
  • 如何将特定范围内的标量添加到 numpy 数组?

    有没有一种更简单 更节省内存的方法可以单独在 numpy 中执行以下操作 import numpy as np ar np array a l r ar c a a 0 l ar tolist a r 它可能看起来很原始 但它涉及获取给定数
  • 无法导入 langchain.agents.load_tools

    我正在尝试使用 LangChain Agents 但无法导入 load tools 版本 langchain 0 0 27 我尝试过这些 from langchain agents import initialize agent from
  • 嵌套作用域和 Lambda

    def funct x 4 action lambda n x n return action x funct print x 2 prints 16 我不太明白为什么2会自动分配给n n是返回的匿名函数的参数funct 完全等价的定义fu
  • 通过Python连接到Bigquery:ProjectId和DatasetId必须非空

    我编写了以下脚本来通过 SDK 将 Big Query 连接到 Python 如下所示 from google cloud import bigquery client bigquery Client project My First Pr
  • 找到一个数字所属的一组范围

    我有一个 200k 行的数字范围列表 例如开始位置 停止位置 该列表包括除了非重叠的重叠之外的所有类型的重叠 列表看起来像这样 3 5 10 30 15 25 5 15 25 35 我需要找到给定数字所属的范围 并对 100k 个数字重复该
  • 如何使用 AWS Lambda Python 读取 AWS S3 存储的 Word 文档(.doc 和 .docx)文件内容?

    我的场景是 我尝试使用 python 实现从 Aws Lambda 读取 AWS 存储的 S3 word 文档 doc 和 docx 文件内容 下面的代码是我使用的 我的问题是我可以获取文件名 但无法读取内容 def lambda hand
  • Python:Goslate 翻译请求返回“503:服务不可用”[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我们不允许提出寻求书籍 工具 软件库等推荐的问题 您可以编辑问题 以便用事实和引文来回答 这个问题似乎不是关于主要由程序员使用的特定编程问
  • 如何以正确的方式为独立的Python应用程序制作setup.py?

    我读过几个类似的主题 但还没有成功 我觉得我错过或误解了一些基本的事情 这就是我失败的原因 我有一个用 python 编写的 应用程序 我想在标准 setup py 的帮助下进行部署 由于功能复杂 它由不同的 python 模块组成 但单独
  • 制作一份 Python 文档的 PDF 文件

    Python 官方网站提供 PDF 文档下载 但它们是按章节分隔的 我下载了源代码并构建了 PDF 文档 这些文档也是单独的 PDF 我怎么能够从源代码中的 Makefile 构建一个 PDF 文件 我认为这样阅读起来会更方便 如果连接单独
  • 如何使用 Boto3 启动具有 IAM 角色的 EC2 实例?

    我无法弄清楚如何使用指定的 IAM 角色在 Boto3 中启动 EC2 实例 以下是迄今为止我如何成功创建实例的一些示例代码 import boto3 ec2 boto3 resource ec2 region name us west 2
  • 如何将Python3设置为Mac上的默认Python版本?

    有没有办法将 Python 3 8 3 设置为 macOS Catalina 版本 10 15 2 上的默认 Python 版本 我已经完成的步骤 看看它安装在哪里 ls l usr local bin python 我得到的输出是这样的
  • NLTK:查找单词大小为 2k 的上下文

    我有一个语料库 我有一个词 对于语料库中该单词的每次出现 我想获取一个包含该单词之前的 k 个单词和该单词之后的 k 个单词的列表 我在算法上做得很好 见下文 但我想知道 NLTK 是否提供了一些我错过的功能来满足我的需求 def size

随机推荐

  • 抓包工具fiddler不抓取火狐浏览器的数据

    fiddler可以抓到google浏览器的包 但是抓不到Firefox浏览器的包 火狐浏览器版本79 0 64 位 fiddler 4 亲测好使 操作步骤 打开Fiddler gt 菜单栏 Tools gt Options gt Conne
  • sdf转smi

    from rdkit import Chem smi Chem MolToSmiles Chem SDMolSupplier sdf path 0
  • 全局组件和局部组件

    1 全局组件和局部组件的区别 全局组件 只需要在main js中导入一次 整个项目都可以直接使用 在main js中导入 局部组件 用一次 导一次 在用到的地方导入 2 局部组件导入步骤 3部曲 1 导入子组件 import Registe
  • 基于Flask框架的python微博数据分析

    Python 微博数据 博文 分析 项目简介 后端采用Flask框架搭建 通过移动端接口获取数据 数据清洗后采用jieba进行词法分析 通过WordCloud制作词云展示 数据的可视化在以后的版本中会细化 版本V0 0 1功能 能够获取用户
  • 1. redis核心数据结构实战与高性能原理剖析

    分布式缓存技术Redis 1 Redis的五种数据结构 1 1 String 1 2 hash 1 3 列表list 1 4 set 1 5 ZSet 2 Redis的单线程和高性能 3 其他高级命令 3 1 scan 渐进式遍历键 本文是
  • 从零开始学习微服务 -微服务基本概述、微服务案例

    1 SpringCloud概述 1 1 互联网应用架构 1 1 1 单体应用架构 在诞 之初 项目的 户量 数据量规模都 较 项目所有的功能模块都放在一个工程中编码 编译 打包并且部署在一个Tomcat容器中的架构模式就是单体应用架构 这样
  • SQL注入基础原理与案例(详细总结)

    SQL注入基础原理与案例 一 前言 二 漏洞概述及危害 1 漏洞概述 2 漏洞危害 3 漏洞防范 三 SQL注入 1 SQL注入方式 1 信息收集 2 数据注入 3 高权限注入 2 判断是否存在注入点 1 新办法 2 老办法 3 字段判断
  • vue使用高德地图--附带移动获取当前城市信息

    高德地图 1 使用准备 申请密钥 vue使用 2 移动地图获取城市案例 注意事项 3 总结 1 使用准备 申请密钥 登录注册高德开放平台进入控制台 创建应用 申请key 生成key和安全密钥 2021之后key需要配合安全密钥使用 注意 安
  • 流媒体直播播放协议:HLS、RTMP、HTTP-FLV

    流媒体直播播放协议 HLS RTMP HTTP FLV 一 推拉流 二 协议介绍 1 HLS 2 RTMP 3 HDL HTTP FLV 一 推拉流 在开始之前 先把流媒体服务中的双端关系说一下 在一个完整的流媒体服务框架中 角色就是 两端
  • 【直接收藏】前端JavaScript面试100问 (上篇)

    1 解释一下什么是闭包 闭包 就是能够读取外层函数内部变量的函数 闭包需要满足三个条件 访问所在作用域 函数嵌套 在所在作用域外被调用 优点 可以重复使用变量 并且不会造成变量污染 缺点 会引起内存泄漏 使用闭包的注意点 由于闭包会使得函数
  • 【代码规范】常见注释规范

    1 在有处理逻辑的代码中 源程序有效注释量必须在20 以上 说明 注释的原则是有助于对程序的阅读理解 在该加的地方都加了 注释不宜太多也不能太少 注释语言必须准确 易懂 简洁 2 文件注释 文件注释写入文件头部 说明 以 开始 示例 文件名
  • Linux踩坑(一)—— 切换到命令行登入不进去

    在最近使用Linux时 切换到使用快捷键 Ctrl Alt F3 切换到命令行时 却登入不进去 1 出现背景 当我使用root登入时登入不进去 而且我自己的用户名是中间有空格的 David Wolfowitz 我在命令行中这样输入一直无法登
  • 期权是什么?期权的优缺点是什么?

    期权是一种合约 有看涨期权和看跌期权两种类型 也就是做多和做空两个方向 走势标的物对应大盘指数 这也是期权与其他金融工具的主要区别之一 可以用于套利 对冲股票和激进下跌的风险 下文介绍期权是什么 期权的优缺点是什么 一 什么是期权 期权的标
  • Vue:子组件使用的细节,子组件中的data,ref的使用,

    我们创建一个table div table tbody tbody table div
  • 【工号不够用了怎么办?】

    题目描述 工号不够用了怎么办 3020年 空间通信集团的员工人数突破20亿人 即将遇到现有工号不够用的窘境 现在 请你负责调研新工号系统 继承历史传统 新的工号系统由小写英文字母 a z 和数字 0 9 两部分构成 新工号由一段英文字母开头
  • 会话状态保持,JSESSIONID,COOKIE,URL重写

    居然有3W的访问量 好 我就把session和cookie的关系先来个总结 注意 是最最简单直白明了的总结了 http协议 协议 协议 重要的说3遍 http协议主要有2大块 请求头和请求体 cookie在http请求头里 就是一个由多个K
  • webpack的基本的配置和应用

    借用下官网的图 从图中我们了解webpack功能就是把带有依赖的模块打包成单一相同类别的静态资源文件 接下来帮大家分析下webpack的核心概念及一些辅助配置 一 核心概念 webpack核心概念有这些 入口 entry 输出 output
  • VMware vCenter Server 证书过期解决

    问题现象 今天一上班同事反应虚拟平台登录不了了 验证功能正常 输入正确密码后跳转如下错误界面 查看证书可以看见证书今天要过期了 但是当时还没到11 53 13 却已经用不了了 原因 从vCenter 6 5 Update2 GA Date
  • 数据结构图在python中的应用

    程序世界里 有很多的数据结构 比如 堆 栈 链表等等 今天要讲的就是图数据结构啦 相信大家都使用过或者听说过图数据库吧 我们就来看看最简单的图数据结构算法 首先先来看一下图长什么样 从上图能看出 比如节点A可以到达C D B 节点B只能到达
  • 阶乘和数(python3)

    问题描述 一个正整数如果等于组成它的各位数字的阶乘之和 则该正整数称为阶乘和数 例如正整数145 1 4 5 等于145 因此145就是一个阶乘和数 输入一个正整数 计算它的各位数字的阶乘之和 并判断它是否是一个阶乘和数 注意 输入的正整数