summaryrefslogtreecommitdiff
path: root/minimum-changes-to-make-alternating-binary-string/src/main.rs
blob: 369635d8517e2973a100a7a3ee2c641d8db69145 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
fn main() {
    println!("Hello, world!");
}

struct Solution;

impl Solution {
    pub fn min_operations(s: String) -> i32 {
        let a: Vec<_> = s.chars().collect();
        i32::min(
            a.chunks(2).map(|x| match x { ['0','1'] | ['0'] => 0, ['1', '0'] => 2, _ => 1 }).sum(),
            a.chunks(2).map(|x| match x { ['1','0'] | ['1'] => 0, ['0', '1'] => 2, _ => 1 }).sum()
            )
    }
}