【擴歐應用】同余方程

與擴歐的聯系

在同余方程的求解過程中,我們通常需要將方程轉化為線性不定方程(Diophantine 方程)的形式,然后使用擴展歐幾里得算法(Extended Euclidean Algorithm, EEA)求解。

在這里插入圖片描述
同余方程是怎么轉化為線性不定方程的?
請添加圖片描述

Q:y 的符號變了,難道不會影響整個方程的解嗎?
A:
首先這個問題就搞混了同余方程究竟在干什么,同余方程求解的是x的解集,y只是一個中間變量,中間變量的系數只是為了滿足等式的合理性。
在這里插入圖片描述

例題1

牛客網:【模板】同余方程
在這里插入圖片描述

重點

x x x 的通解公式為: x = x 0 + b d ? k x = x_0 + \frac{b}{d}\cdot k x=x0?+db??k
這意味著 x x x 的解是以 b d \frac{b}{d} db? 為周期的。
在這里插入圖片描述

求最小正整數解對 x 0 x_0 x0? b d \frac{b}{d} db?就保證了它是最小整數,再使用模加模確保結果為正數即可x = (x % b + b) % b;

代碼

#include<iostream>using namespace std;typedef long long LL;LL exgcd(LL a,LL b,LL& x,LL& y)
{if(b == 0){x = 1, y = 0;return a;}LL x1,y1;LL d = exgcd(b,a%b,x1,y1);x = y1, y = x1 - a/b*y1;return d;
}int main()
{int T; cin >> T;while(T--){LL a,b; cin >> a >> b;LL x,y;LL d = exgcd(a,b,x,y);if(d == 1){x = (x % b + b) % b;cout << x << endl;}else{cout << -1 << endl;}}return 0;
}

例題2

洛谷:P1516 青蛙的約會
在這里插入圖片描述

分析

請添加圖片描述

代碼

#include<iostream>using namespace std;typedef long long LL;LL exgcd(LL a, LL b, LL& x, LL& y)
{if(b == 0){x = 1, y = 0;return a;}LL x1,y1,d;d = exgcd(b, a%b, x1, y1);x = y1;y = x1 - a/b*y1;return d;
}int main()
{LL x,y,m,n,l;cin >> x >> y >> m >> n >> l;LL a = m - n, b = l, c = y - x;if(a < 0){a = -a, c = -c;}LL x0,y0;LL d = exgcd(a,b,x0,y0);if(c % d == 0){x0 = c / d * x0, y0 = c / d * y0;LL k1 = b / d;cout << (x0 % k1 + k1) % k1 << endl;}else{cout << "Impossible" << endl;}return 0;
} 

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/86623.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/86623.shtml
英文地址,請注明出處:http://en.pswp.cn/web/86623.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

結構化數據:NumPy 的結構化數組

文章目錄 結構化數據&#xff1a;NumPy 的結構化數組探索結構化數組的創建更高級的復合類型記錄數組&#xff1a;結構化數組的變體走向 Pandas 結構化數據&#xff1a;NumPy 的結構化數組 雖然我們的數據通常可以用同質數組很好地表示&#xff0c;但有時情況并非如此。本文將演…

phpcms 更換新域名更新欄目url和內容頁url無法更新解決方法

更換域名后更新欄目url和內容頁url還是無法更新為新的域名&#xff0c;手動把cache文件夾下能清除的緩存文件清除了還是不行&#xff0c;把數據庫的緩存表內容清空了還是不行&#xff0c;問題在于欄目緩存并沒有清除。 解決辦法: (1)、找到文件&#xff1a;/caches/configs/sys…

瑪哈特七輥矯平機:板材平整的精密衛士

在金屬板材加工領域&#xff0c;表面平整度是衡量產品質量的核心指標之一。無論是汽車覆蓋件、精密儀器外殼&#xff0c;還是建筑裝飾板材&#xff0c;任何彎曲、波浪或翹曲都將嚴重影響后續加工精度、產品強度及美觀度。七輥矯平機&#xff0c;憑借其獨特的輥系結構設計&#…

融合聚類與分類的退役鋰電智能分選技術:助力新能源汽車產業可持續發展

融合聚類與分類的退役鋰電智能分選技術&#xff1a;助力新能源汽車產業可持續發展 關鍵詞&#xff1a;退役鋰離子電池分選 | 聚類分類融合 | 電化學阻抗譜(EIS) | 動態時間規整(DTW) | 多模態分類模型 新能源汽車 | 電池梯次利用 | 增量學習 | 數字孿生 | 聯邦學習 | 雙流特征…

jenkins中執行python腳本導入路徑錯誤

&#x1f9fe; 問題一&#xff1a;ModuleNotFoundError: No module named jenkins &#x1f50d; 現象&#xff1a; 在本地運行正常&#xff0c;但在 Jenkins 中運行腳本時報錯&#xff0c;提示找不到 jenkins 模塊。 ? 原因分析&#xff1a; Python 默認只從當前目錄或已…

華為云Flexus+DeepSeek征文 | 華為云ModelArts Studio實戰指南:創建高效的AingDesk知識庫問答助手

華為云FlexusDeepSeek征文 | 華為云ModelArts Studio實戰指南&#xff1a;創建高效的AingDesk知識庫問答助手 前言一、ModelArts Studio介紹1. 華為云ModelArts Studio簡介2. 華為云ModelArts Studio主要特點3. 華為云ModelArts Studio主要使用場景 二、AingDesk介紹1. AingDes…

NLP基礎1_word-embedding

基于github項目&#xff1a;https://github.com/shibing624/nlp-tutorial/tree/main 自然語言處理任務 1) 簡單任務 拼寫檢查 Spell Checking 關鍵詞檢索 Keyword Search 同義詞查找 Finding Synonyms 2) 中級任務 解析來自網站、文檔等的信息 3) 復雜任務 機器翻譯 Ma…

ClickHouse系列--BalancedClickhouseDataSource實現

clickhouse-jdbc中負載均衡數據源的實現。 基本邏輯如下&#xff1a; 1.通過配置的url串&#xff0c;來切分構造url列表&#xff1b; 2.通過一個定時線程任務&#xff0c;來不斷的去ping url列表&#xff0c;來更新可用的url列表&#xff1b; 3.在可用列表中隨機返回一個可用ur…

Linux目錄說明

Linux Filesystem Hierarchy Standard&#xff08;FHS&#xff09; 1. /bin 全稱&#xff1a;Binary&#xff08;二進制文件&#xff09;功能&#xff1a;存放系統最基礎的可執行命令&#xff0c;所有用戶&#xff08;包括普通用戶&#xff09;都能使用&#xff0c;用于系統啟…

鴻蒙 Grid 與 GridItem 深度解析:二維網格布局解決方案

一、引言&#xff1a;網格布局 —— 多維度數據展示的黃金方案 在鴻蒙應用開發體系中&#xff0c;網格布局作為處理多元素有序排列的核心方案&#xff0c;廣泛應用于電商商品陳列、圖片畫廊、功能矩陣等場景。鴻蒙提供的 Grid 與 GridItem 組件通過聲明式語法構建靈活的二維布…

??Vue 開發環境配置:使用 devServer.proxy 解決跨域問題?-vue中文件vue.config,js中配置devserver做反向代理到后端

??Vue 開發環境配置&#xff1a;使用 devServer.proxy 解決跨域問題?? ??引言?? 在現代 Web 開發中&#xff0c;前端和后端通常獨立開發&#xff0c;前端運行在 http://localhost:8080&#xff0c;而后端可能運行在 http://localhost:8000 或其他端口。由于瀏覽器的 …

JVM 中的 GC 算法演進之路!(Serial、CMS、G1 到 ZGC)

引言 想象一下&#xff0c;Java 程序運行就像在一個巨大的圖書館里借書還書。這個圖書館&#xff08;JVM 的內存堆區&#xff09;為了高效運轉&#xff0c;需要一個聰明的“圖書管理員”來清理失效的書籍&#xff08;垃圾對象&#xff09;。這&#xff0c;就是垃圾回收器&#…

(9)python+playwright自動化測試-頁面(page)

1.簡介 通過前邊的講解和學習&#xff0c;細心認真地你可能發現在Playwright中&#xff0c;沒有Element這個概念&#xff0c;只有Page的概念&#xff0c;Page不僅僅指的是某個頁面&#xff0c;例如頁面間的跳轉等&#xff0c;還包含了所有元素、事件的概念&#xff0c;所以我們…

《自動控制原理 》- 第 1 章 自動控制的基本原理與方式

1-1 自動控制的基本原理與方式 自動控制是指在沒有人直接參與的情況下&#xff0c;利用外加的設備或裝置&#xff0c;使機器、設備或生產過程的某個工作狀態或參數按照預定的規律運行。自動控制的核心原理是反饋控制&#xff0c;即通過將系統的輸出量回送到輸入端&#xff0c;與…

DL00715-基于YOLOv11的水面漂浮物目標檢測含數據集

【論文必備】基于YOLOv11的水面漂浮物目標檢測——讓你的研究走在科技前沿&#xff01; 在環境監測、海洋保護和水質管理領域&#xff0c;水面漂浮物的檢測一直是一個亟待解決的難題。傳統的人工巡檢方式不僅耗時費力&#xff0c;還無法覆蓋廣泛的水域范圍。如今&#xff0c;基…

權電阻網絡DAC實現電壓輸出型數模轉換Multisim電路仿真——硬件工程師筆記

目錄 1 基礎知識 1.1 運算放大器在DAC中的作用 1.2 常見的基于運算放大器的DAC電路 1.2.1 倒T形電阻網絡DAC 1.2.2 權電阻網絡DAC 1.2.3 開關電容DAC 1.3 運算放大器的選擇 1.4 設計注意事項 2 仿真實驗 2.1 權電阻網絡DAC實現數字0對應電壓輸出 2.2 權電阻網絡DAC實…

Redis主從集群

? 一、什么是 Redis 主從集群&#xff1f; Redis 主從&#xff08;Master-Slave&#xff09;集群是一種最基礎的集群方式&#xff1a; 一臺 Redis 作為主節點&#xff08;Master&#xff09;&#xff0c;負責寫操作&#xff1b; 一到多臺 Redis 作為從節點&#xff08;Slave&…

【水印論文閱讀1】將水印規則的定義域從離散的符號空間轉移到連續的語義空間

【水印論文閱讀1】將水印規則的定義域從離散的符號空間轉移到連續的語義空間 寫在最前面**為什么“token序列空間”有根本缺陷&#xff1f;****為什么“語義向量空間”能破局&#xff1f;****1. 連續性&#xff08;抗攻擊的核心&#xff09;****2. 高維復雜性&#xff08;防破解…

Glide緩存機制

一、緩存層級與設計目標 雙級緩存&#xff1a; 內存緩存&#xff1a;弱引用 LruCache 磁盤緩存&#xff1a;DiskLruCache 設計目標&#xff1a; 減少網絡流量消耗 避免Bitmap頻繁創建/銷毀引發的GC 提升圖片加載速度 二、內存緩存機制 1. 雙緩存結構 緩存類型存儲對象…

BaiduSitemap - Typecho站點地圖生成與多搜索引擎推送插件

文章目錄 ?? BaiduSitemap - Typecho站點地圖生成與多搜索引擎推送插件? 功能特點?? 插件架構核心模塊文件結構?? 安裝方法方法一:手動安裝方法二:Git克隆?? 配置說明站點地圖基本設置搜索引擎配置百度搜索引擎必應(Bing)搜索引擎谷歌(Google)搜索引擎?? 使用…