Skip to main content
impol.dev

Count the Number of Substrings With Dominant Ones

Medium

You receive a binary string s.

Produce the number of substrings with dominant ones.

A string has dominant ones if the number of ones in the string is greater than or equal to the square of the number of zeros in the string.

Example 1

Input: s = "00011"

Output: 5

Explanation: The substrings with dominant ones are shown in the table below.

ijs[i..j]Number of ZerosNumber of Ones
33101
44101
230111
341102
2401112
Example 2

Input: s = "101101"

Output: 16

Explanation: The substrings with non-dominant ones are shown in the table below.

Since there are 21 substrings total and 5 of them have non-dominant ones, it follows that there are 16 substrings with dominant ones.

ijs[i..j]Number of ZerosNumber of Ones
11010
44010
14011022
041011023
150110123

Constraints

  • 1 <= s.length <= 4 * 10^4
  • s consists only of characters '0' and '1'.

Did this problem appear in one of your interviews?

Responses stay private.

Acceptance rate: 0%

© 2026 impol.dev. All rights reserved.PrivacyTerms