"Des énigmes mathématiques qui entraînent davantage le cerveau du programme" _Q01 (code: Ruby) -> Rust

Je pensais que la réécriture "puzzles mathématiques qui entraînent davantage le cerveau du programmeur" avec Rust pourrait être juste pour éviter le flou.

Q01: Décision majoritaire décidée d'un seul coup

Bien que ce ne soit pas le point principal, la partie subtile du réglage de ce quiz est que "la victoire ou la défaite de Janken" n'a rien à voir avec "la victoire ou la défaite de la majorité". "Si c'est Choki 2 et Par 2, Choki gagne," dit-il, confus où ce n'était pas la ligne principale ...

Ruby

q01_2.rb


N = 100

cnt = 0
0.upto(N) do |left|
    left.upto(N) do |right|
        all = [left, right - left, N - right]
        cnt += 1 if all.count(all.max) == 1
    end
end
puts cnt

Rust

main.rs


fn main() {
    let mut q01 = Q01{ num_of_people:100,};
    let answer = q01.solve();

    println!("{}", answer);
}

struct Q01 {
    num_of_people:i64,
}

impl Q01 {
    pub fn solve(&mut self) -> i64 {
        let mut count = 0;
        for left in 0..=self.num_of_people {
            for right in left..=self.num_of_people {
                let all = vec![left, right - left, self.num_of_people - right];
                let max_value = all.iter().max().unwrap();
                let c = all.iter().filter(|&v| *v == *max_value).count();
                if c == 1 {
                    count += 1;
                }
            }
        }
        return count;
    }
}

C'est comme ça? La valeur maximale et la recherche de Vec doivent être passées une fois par ʻiter ()`.

Recommended Posts

"Puzzles mathématiques qui entraînent davantage le cerveau du programme" _Q39 (code: Ruby) -> Rust
"Des énigmes mathématiques qui entraînent davantage le cerveau du programme" _Q17 (code: Ruby) -> Rust
"Des énigmes mathématiques qui entraînent davantage le cerveau du programme" _Q01 (code: Ruby) -> Rust
"Puzzles mathématiques qui entraînent davantage le cerveau du programme" _pp.018-020 (code: Ruby) -> Rust
"Puzzles mathématiques qui entraînent davantage le cerveau du programme" _Q61 (code: Ruby) -> Rust (& SQL)
"Des énigmes mathématiques qui entraînent davantage le cerveau du programme" _Q41 (code: Ruby) -> Rust
"Puzzles mathématiques qui entraînent davantage le cerveau du programme" _Q18 (code: Ruby) -> Rust
"Puzzles mathématiques qui entraînent davantage le cerveau du programme" _Q02 (code: Ruby) -> Rust
"Des énigmes mathématiques qui entraînent davantage le cerveau du programme" _Q17 (code: Ruby) -> Rust
"Des énigmes mathématiques qui entraînent davantage le cerveau du programme" _Q01 (code: Ruby) -> Rust
"Puzzles mathématiques qui entraînent davantage le cerveau du programme" _pp.018-020 (code: Ruby) -> Rust
"Puzzles mathématiques qui entraînent davantage le cerveau du programme" _Q61 (code: Ruby) -> Rust (& SQL)
"Des énigmes mathématiques qui entraînent davantage le cerveau du programme" _Q41 (code: Ruby) -> Rust
"Puzzles mathématiques qui entraînent davantage le cerveau du programme" _Q18 (code: Ruby) -> Rust
"Puzzle mathématique pour entraîner le cerveau du programme plus" _Q40 (code: Ruby) -> Rust inachevé
Une tentative de "puzzles mathématiques qui entraînent davantage le cerveau de Rust".
Les langues qui ont influencé Rust
Une tentative de "puzzles mathématiques qui entraînent davantage le cerveau de Rust".
"Puzzles mathématiques qui entraînent davantage le cerveau du programme" _Q39 (code: Ruby) -> Rust
"Des énigmes mathématiques qui entraînent davantage le cerveau du programme" _Q17 (code: Ruby) -> Rust
"Des énigmes mathématiques qui entraînent davantage le cerveau du programme" _Q01 (code: Ruby) -> Rust
"Puzzles mathématiques qui entraînent davantage le cerveau du programme" _pp.018-020 (code: Ruby) -> Rust
"Puzzles mathématiques qui entraînent davantage le cerveau du programme" _Q61 (code: Ruby) -> Rust (& SQL)
"Des énigmes mathématiques qui entraînent davantage le cerveau du programme" _Q41 (code: Ruby) -> Rust
"Puzzles mathématiques qui entraînent davantage le cerveau du programme" _Q18 (code: Ruby) -> Rust
"Puzzles mathématiques qui entraînent davantage le cerveau du programme" _Q02 (code: Ruby) -> Rust
"Des énigmes mathématiques qui entraînent davantage le cerveau du programme" _Q17 (code: Ruby) -> Rust
"Des énigmes mathématiques qui entraînent davantage le cerveau du programme" _Q01 (code: Ruby) -> Rust
"Puzzles mathématiques qui entraînent davantage le cerveau du programme" _pp.018-020 (code: Ruby) -> Rust
"Puzzles mathématiques qui entraînent davantage le cerveau du programme" _Q61 (code: Ruby) -> Rust (& SQL)
"Des énigmes mathématiques qui entraînent davantage le cerveau du programme" _Q41 (code: Ruby) -> Rust
"Puzzles mathématiques qui entraînent davantage le cerveau du programme" _Q18 (code: Ruby) -> Rust
"Puzzle mathématique pour entraîner le cerveau du programme plus" _Q40 (code: Ruby) -> Rust inachevé
Une tentative de "puzzles mathématiques qui entraînent davantage le cerveau de Rust".
Les langues qui ont influencé Rust
Une tentative de "puzzles mathématiques qui entraînent davantage le cerveau de Rust".
Mémorandum pour nettoyer le code Ruby
[Ruby] Code pour afficher le jour
Les langues qui ont influencé Rust