包子湊數——藍橋杯真題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.pswp.cn/web/70769.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/70769.shtml
英文地址,請注明出處:http://en.pswp.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 處理器平臺演示…