"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q01 (Code: Ruby) -> Rust

Ich dachte, dass das Umschreiben von "Mathe-Rätseln, die das Gehirn des Programmierers mehr trainieren" mit Rust genau richtig sein könnte, um Unschärfe zu verhindern.

Q01: Mehrheitsentscheidung mit einem Schuss entschieden

Obwohl dies nicht der Hauptpunkt ist, ist der subtile Punkt bei der Einstellung dieses Quiz, dass "Janken gewinnt und verliert" nichts mit "Mehrheitsgewinnen und -verlusten" zu tun hat. "Wenn es Choki 2 und Par 2 sind, gewinnt Choki", sagte er verwirrt, wo es nicht die Hauptlinie war ...

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;
    }
}

Ist es so Der Maximalwert und die Suche nach "Vec" müssen einmal durch "iter ()" geleitet werden.

Recommended Posts

"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q39 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q17 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q01 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _pp.018-020 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q61 (Code: Ruby) -> Rust (& SQL)
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q41 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q18 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q02 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q17 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q01 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _pp.018-020 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q61 (Code: Ruby) -> Rust (& SQL)
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q41 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q18 (Code: Ruby) -> Rust
"Mathe-Puzzle, um das Programmhirn mehr zu trainieren" _Q40 (Code: Ruby) -> Rost unvollendet
Ein Versuch, "Mathe-Rätsel, die das Rust-Gehirn mehr trainieren".
Die Sprachen, die Rust beeinflusst haben
Ein Versuch, "Mathe-Rätsel, die das Rust-Gehirn mehr trainieren".
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q39 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q17 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q01 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _pp.018-020 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q61 (Code: Ruby) -> Rust (& SQL)
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q41 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q18 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q02 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q17 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q01 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _pp.018-020 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q61 (Code: Ruby) -> Rust (& SQL)
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q41 (Code: Ruby) -> Rust
"Mathe-Rätsel, die das Programmhirn mehr trainieren" _Q18 (Code: Ruby) -> Rust
"Mathe-Puzzle, um das Programmhirn mehr zu trainieren" _Q40 (Code: Ruby) -> Rost unvollendet
Ein Versuch, "Mathe-Rätsel, die das Rust-Gehirn mehr trainieren".
Die Sprachen, die Rust beeinflusst haben
Ein Versuch, "Mathe-Rätsel, die das Rust-Gehirn mehr trainieren".
Memorandum zum Bereinigen des Codes Ruby
[Ruby] Code zur Anzeige des Tages
Die Sprachen, die Rust beeinflusst haben