Cod sursa(job #3370349)

Utilizator martinuke0Alexandru Martiniuc martinuke0 Data 25 octombrie 2026 18:23:30
Problema Algoritmul lui Euclid Scor 0
Compilator rs Status done
Runda Arhiva educationala Marime 0.62 kb

use std::io::{self, Read};

fn cmmdc(mut a: u64, mut b: u64) -> u64 {
    while b != 0 {
        let r = a % b;
        a = b;
        b = r;
    }
    a
}

fn main() {
    let mut input = String::new();
    io::stdin().read_to_string(&mut input).unwrap();

    let mut iter = input.split_whitespace();
    let t: usize = iter.next().unwrap().parse().unwrap();

    let mut output = String::new();

    for _ in 0..t {
        let a: u64 = iter.next().unwrap().parse().unwrap();
        let b: u64 = iter.next().unwrap().parse().unwrap();

        output.push_str(&format!("{}\n", cmmdc(a, b)));
    }

    print!("{}", output);
}