包子凑数——蓝桥杯真题Python

包子凑数

在这里插入图片描述

输入输出样例
示例 1

输入

2
4
5

输出

6

样例说明

凑不出的数目包括:1, 2, 3, 6, 7, 11。

示例 2

输入

2
4
6

输出

INF

样例说明

所有奇数都凑不出来,所以有无限多个

运行限制
  • 最大运行时间:1s
  • 最大运行内存: 256M

最大公约数

最大公约数:Greatest Common Divisor,GCD,指两个或多个整数共有约数中的最大值。

计算方法:

  1. 质因数分解法:将各数分解为质因数,取共有质因数的最小幂次乘积。

    例如,求36和48的GCD:

    36=2^2 * 32,48=24 * 3^1

    GCD=22*31=12

  2. 辗转相除法(欧几里得算法):基于定理 gcd (a,b)=gcd (b,a mod b),迭代至余数为零。

    例如,求 1071 和 462 的 GCD:

    1071 ÷ 462 = 2(余 147)→ gcd (462,147)

    462 ÷ 147 = 3(余 21)→ gcd (147,21)

    147 ÷ 21 = 7(余 0)→ GCD 为 21

裴蜀定理
  1. 定理内容:对于多个整数,若其GCD为d,则它们线性组合的所有可能结果均为d的倍数。
  2. 无限不可凑数判定:若所有整数的GCD大于1,则只能凑出d的倍数,此时就有无限多 无法凑出的数目,如GCD=2,那么所有的奇数都无法凑出。
  3. 有限不可凑数判定:若GCD为1,则存在一个最大不可凑数M,超过M的所有数均可被凑出,
解题步骤
  1. 首先输入n和数组A
  2. 情况一:若数组A中包含1,那么说明任何数都能凑,打印0.
  3. 情况二:GCD!=1,则说明有无数个无法凑出的数,打印INF。
  4. 情况三:GCD==1,则进入动态规划步骤。
import math
def main():n = int(input())A = [[int(input())] for _ in range(n)]if 1 in A:print("0")returng = A[0]for a in A:g = math.gcd(a,g)if g != 1 :print("INF")returnelse :maxSize = 10000dp = [False] * (maxSize + 1)dp[0] = Truefor i in range(1, maxSize+1):if dp[i]:for a in A:if i+a < maxSize+1:dp[i+a] = Trueresult = 0for i in dp:if i == False:result += 1print(result)returnif __name__ == "__main__":main()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/70769.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SSM和SpringBoot有什么区别?

SSM&#xff08;Spring、Spring MVC、MyBatis&#xff09;和 Spring Boot 有以下一些区别&#xff1a; 配置方式 SSM&#xff1a;配置相对繁琐&#xff0c;需要在多个 XML 文件中进行大量的配置。Spring Boot&#xff1a;采用“约定大于配置”的原则&#xff0c;极大地简化了配…

极简Python服务器后端

在Python中&#xff0c;可以使用http.server模块和json模块来创建一个简单的HTTP服务器&#xff0c;该服务器可以响应80端口上的/query POST请求&#xff0c;并且请求体为JSON格式。 需要注意&#xff0c;在Linux系统上&#xff0c;使用低于1024的端口&#xff08;如80端口&…

文档检索服务平台

文档检索服务平台是基于Elasticsearch的全文检索&#xff0c;包含数据采集、数据清洗、数据转换、数据检索等模块。 项目地址&#xff1a;Github、国内Gitee 演示地址&#xff1a;http://silianpan.cn/gdss/ 以下是演示角色和账号&#xff08;密码同账号&#xff09;&#xf…

关于Postman自动获取token

在使用postman测试联调接口时&#xff0c;可能每个接口都需要使用此接口生成的令牌做Authorization的Bearer Token验证&#xff0c;最直接的办法可能会是一步一步的点击&#xff0c;如下图&#xff1a; 在Authorization中去选择Bearer Token&#xff0c;然后将获取到的token粘贴…

清华大学DeepSeek文档下载,清华大学deepseek下载(完成版下载)

文章目录 前言一、清华大学DeepSeek使用手册下载二、清华大学DeepSeek使用手册思维导图 前言 这是一篇关于清华大学deepseek使用手册pdf的介绍性文章&#xff0c;主要介绍了DeepSeek的定义、功能、使用方法以及如何通过提示语设计优化AI性能。以下是对这些核心内容的简要概述&…

Linux:(3)

一&#xff1a;Linux和Linux互传&#xff08;压缩包&#xff09; scp:Linux scp 命令用于 Linux 之间复制文件和目录。 scp 是 secure copy 的缩写, scp 是 linux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令。 scp 是加密的&#xff0c;rcp 是不加密的&#xff0c;scp 是…

【新人系列】Python 入门专栏合集

✍ 个人博客&#xff1a;https://blog.csdn.net/Newin2020?typeblog &#x1f4dd; 专栏地址&#xff1a;https://blog.csdn.net/newin2020/category_12801353.html &#x1f4e3; 专栏定位&#xff1a;为 0 基础刚入门 Python 的小伙伴提供详细的讲解&#xff0c;也欢迎大佬们…

Arcgis 实用制图技巧--如何制作“阴影”效果

今天给大家介绍arcgis中阴影效果的制作方法,操作很简单,在ArcMap当中使用制图表达和移动几何方式就可以轻松实现。 左侧地图的图形背景组织很差。右侧地图通过使用阴影效果突出了重点内容。今天,我将要介绍两种阴影效果的创建方法:第一,纯色阴影(single color);第二,渐变…

pandas如何在dataframe上再添加一个dataframe

在pandas中&#xff0c;通常将一个DataFrame与另一个DataFrame进行合并或连接操作&#xff0c;主要有concat函数、merge函数和join方法三种方式&#xff0c;以下是具体介绍&#xff1a; ### 使用concat函数 concat函数可以沿着指定轴将多个DataFrame连接在一起&#xff0c;默认…

YOLOv12 ——基于卷积神经网络的快速推理速度与注意力机制带来的增强性能结合

概述 实时目标检测对于许多实际应用来说已经变得至关重要&#xff0c;而Ultralytics公司开发的YOLO&#xff08;You Only Look Once&#xff0c;只看一次&#xff09;系列一直是最先进的模型系列&#xff0c;在速度和准确性之间提供了稳健的平衡。注意力机制的低效阻碍了它们在…

OpenAI开放Deep Research权限,AI智能体大战升级,DeepSeek与Claude迎来新对决

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

鸿蒙5.0实战案例:基于RichEditor的评论编辑

往期推文全新看点&#xff08;文中附带全新鸿蒙5.0全栈学习笔录&#xff09; ✏️ 鸿蒙&#xff08;HarmonyOS&#xff09;北向开发知识点记录~ ✏️ 鸿蒙&#xff08;OpenHarmony&#xff09;南向开发保姆级知识点汇总~ ✏️ 鸿蒙应用开发与鸿蒙系统开发哪个更有前景&#…

通过命令启动steam的游戏

1. 启动Steam客户端 在命令行输入以下命令来启动Steam客户端&#xff1a; start steam://open/main 如果Steam未安装在默认路径&#xff0c;可能需要先定位到Steam的安装目录&#xff0c;例如&#xff1a; cd C:\Program Files (x86)\Steam start steam://open/main 2. 通过…

RIP-AV:使用上下文感知网络进行视网膜动脉/静脉分割的联合代表性实例预训练

文章目录 RIP-AV: Joint Representative Instance Pre-training with Context Aware Network for Retinal Artery/Vein Segmentation摘要方法实验结果 RIP-AV: Joint Representative Instance Pre-training with Context Aware Network for Retinal Artery/Vein Segmentation …

单片机总结【GPIO/TIM/IIC/SPI/UART】

一、GPIO 1、概念 通用输入输出口&#xff1b;开发者可以根据自己的需求将其配置为输入或输出模式&#xff0c;以实现与外部设备进行数据交互、控制外部设备等功能。简单来说&#xff0c;GPIO 就像是计算机或微控制器与外部世界沟通的 “桥梁”。 2、工作模式 工作模式性质特…

.gitignore 文件中添加忽略 .pdb 文件

我在项目的根目录下创建.gitignore文件。打开.gitignore文件并添加忽略.pdb文件的规则。如下&#xff1a; 已经在 .gitignore 文件中添加了忽略 .pdb 文件的规则&#xff0c;但是提交到 Git 仓库时仍然看到了 .pdb 文件&#xff0c;这通常意味着 .pdb 文件在 .gitignore 文件被…

ubuntu配置jmeter

1.前提准备 系统 ubuntu server 22.04 前提条件&#xff1a;服务器更新apt与安装lrzsz&#xff1a;更新apt&#xff1a; sudo apt update安装lrzsz: 命令行下的上传下载文件工具 sudo apt install lrzszsudo apt install zip2.安装jemeter 2.1.下载jdk17 输入命令&#xf…

半导体晶圆精控:ethercat转profient网关数据提升制造精度

数据采集系统通过网关连接离子注入机&#xff0c;精细控制半导体晶圆制造过程中的关键参数。 在半导体制造中&#xff0c;晶圆制造设备的精密控制是决定产品性能的关键因素。某半导体工厂采用耐达讯Profinet转EtherCAT协议网关NY-PN-ECATM&#xff0c;将其数据采集系统与离子注…

VSCode+PlatformIO报错 找不到头文件

如图示&#xff0c;找不到目标头文件 demo工程运行正常&#xff0c;考虑在src文件夹内开辟自己的代码&#xff0c;添加后没有找到 找了些资料&#xff0c;大概记录如下&#xff1a; 1、c_cpp_properties.json 内记录 头文件配置 .vscode 中&#xff0c;此文件是自动生成的&a…

ARM 处理器平台 eMMC Flash 存储磨损测试示例

By Toradex秦海 1). 简介 目前工业嵌入式 ARM 平台最常用的存储器件就是 eMMC Nand Flash 存储&#xff0c;而由于工业设备一般生命周期都比较长&#xff0c;eMMC 存储器件的磨损寿命对于整个设备来说至关重要&#xff0c;因此本文就基于 NXP i.MX8M Mini ARM 处理器平台演示…