Post

1910 Check If Binary String Has At Most One Segment Of Ones

1910 Check If Binary String Has At Most One Segment Of Ones

Check if Binary String Has at Most One Segment of Ones image

Given a binary string s ​​​​​without leading zeros, return true​​​ if *s contains at most one contiguous segment of ones*. Otherwise, return false.

 

Example 1:

1
2
3
4
5
**Input:** s = "1001"
**Output:** false
**Explanation: **The ones do not form a contiguous segment.

Example 2:

1
2
3
**Input:** s = "110"
**Output:** true

 

Constraints:

1
2
3
1 <= s.length <= 100
s[i]​​​​ is either '0' or '1'.
s[0] is '1'.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

impl Solution {
    pub fn check_ones_segment(s: String) -> bool {
        let mut found_zeros = false;

        for k in s.chars() {
            if k.to_digit(10).unwrap() == 0 {
                found_zeros = true;
            }

            if k.to_digit(10).unwrap() == 1 && found_zeros {
                return false;
            }
        }
        return true;

    }
}



This post is licensed under CC BY 4.0 by the author.