bouzuya.hatenablog.com

ぼうずやのにっき

ABC290 の A, B, C, D を解いた

Toyota Programming Contest 2023 Spring Qual B(ABC290 : AtCoder Beginner Contest 290) の A, B, C, D を解いた。

use proconio::{input, marker::Usize1};

fn gcd(n: usize, m: usize) -> usize {
    if m == 0 {
        n
    } else {
        gcd(m, n % m)
    }
}

fn main() {
    input! {
        t: usize,
        ndk: [(usize, usize, Usize1); t],
    };
    for (n, d, k) in ndk {
        let d = d % n;
        let ans = if d == 0 {
            k
        } else {
            (d * k) % n + k / (n / gcd(n, d))
        };
        println!("{}", ans);
    }
}

bouzuya/rust-sandbox の nostrs で nostr のクライアントを書こうとしている。

crates:nostr-sdk を使うと簡単に書けそう。


今日のコミット。