国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

拓展歐幾里得

2019-11-11 03:52:41
字體:
來源:轉載
供稿:網友

輾轉相除法

int gcd(int a, int b){ return a == 0 ? b : gcd(b % a, a); }

拓展歐幾里得算法

ll exgcd(ll a, ll b){ if(b == 0) { x = 1, y = 0; return a; } else { ll ans = exgcd(b, a%b); ll tmp = x; x = y; y = tmp - (a / b) * x; return ans; }}

例題:同余方程 Mod

Noip2012提高組復賽Day2T1

描述

求關于x的同余方程ax ≡ 1 (mod b)的最小正整數解。


格式

輸入格式 輸入只有一行,包含兩個正整數a, b,用一個空格隔開。 輸出格式 輸出只有一行,包含一個正整數x0,即最小正整數解。輸入數據保證一定有解。


樣例1

樣例輸入1

3 10

樣例輸出1

7


超裸的題,直接上拓展歐幾里得


#include<iostream>#include<cstdio>#include<cstring>#include<cmath>using namespace std;typedef long long ll;int x, y;ll exgcd(ll a, ll b){ if(b == 0) { x = 1, y = 0; return a; } else { ll ans = exgcd(b, a%b); ll tmp = x; x = y; y = tmp - (a / b) * x; return ans; }}int main(){ ll a,b; cin>>a>>b; exgcd(a, b); x = (x + b) % b;//防止出現負數 cout<<x; return 0;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 平舆县| 满城县| 兰西县| 新民市| 呈贡县| 阳山县| 商洛市| 怀宁县| 麻江县| 个旧市| 长春市| 麻阳| 邢台县| 酒泉市| 通许县| 兴业县| 凉城县| 广平县| 辽中县| 绍兴市| 九龙县| 祥云县| 嘉定区| 来凤县| 彰武县| 东平县| 铁岭市| 天等县| 中方县| 武冈市| 库尔勒市| 呼图壁县| 类乌齐县| 三都| 博客| 自治县| 安溪县| 庄浪县| 黑龙江省| 德令哈市| 巩留县|