Namaran

Code daily. Without assist.

2026-08-22

gcd.rs

fn gcd(a: u32, b: u32) -> u32 {
    // write this: greatest common divisor of a and b
}

gcdを実装してください。abの最大公約数を返します。

Reference
fn gcd(a: u32, b: u32) -> u32 {
    if b == 0 { a } else { gcd(b, a % b) }
}

ユークリッドの互除法です:b0ならそこでaが答え、そうでなければba mod bについて同じ問題を解きます。これは参考実装であり、唯一の正解ではありません — 自分の実装と比較してみてください(ループで書くこともできます)。