2つの正の整数 a, b の最大公約数(GCD)を出力してください。
古代ギリシャから伝わるユークリッドの互除法を使うと簡単に求められます。
| 入力 | 出力 |
|---|---|
12 18 | 6 |
17 5 | 1(互いに素) |
a を b で割った余りを r とし、a ← b, b ← r をくり返す。b が 0 になったときの a が答え。while (b != 0) {
int r = a % b;
a = b;
b = r;
}
printf("%d\n", a);