Unverified Commit 31ca9021 authored by mgt/Enter-tainer's avatar mgt/Enter-tainer Committed by GitHub
Browse files

Merge pull request #2509 from OI-wiki/Xeonacid-patch-1

parents 926ba599 b25807e2
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -158,7 +158,7 @@ int gcd(int a, int b, int& x, int& y) {
}
```

如果仔细观察 a1 和 b1,你会发现,他们在迭代版本的欧几里德算法中取值完全相同,并且以下公式无论何时(在 while 循环之前和每次迭代结束时)都是成立的: $x \cdot a +y \cdot b =a_1$ 和 $x_1 \cdot a +y_1 \cdot b= b_1$ 。因此,该算法肯定能正确计算出 $\gcd$ 。
如果仔细观察 $a_1$ 和 $b_1$ ,你会发现,他们在迭代版本的欧几里德算法中取值完全相同,并且以下公式无论何时(在 while 循环之前和每次迭代结束时)都是成立的: $x \cdot a +y \cdot b =a_1$ 和 $x_1 \cdot a +y_1 \cdot b= b_1$ 。因此,该算法肯定能正确计算出 $\gcd$ 。

最后我们知道 $a_1$ 就是要求的 $\gcd$ ,有 $x \cdot a +y \cdot b =g$ 。