Split a String in Balanced Strings
Description
Balanced strings are those who have equal quantity of 'L' and 'R' characters.
Given a balanced string s
split it in the maximum amount of balanced strings.
Return the maximum amount of splitted balanced strings.
Example 1:
Input: s = "RLRRLLRLRL" Output: 4 Explanation: s can be split into "RL", "RRLL", "RL", "RL", each substring contains same number of 'L' and 'R'.
Example 2:
Input: s = "RLLLLRRRLR" Output: 3 Explanation: s can be split into "RL", "LLLRRR", "LR", each substring contains same number of 'L' and 'R'.
Example 3:
Input: s = "LLLLRRRR" Output: 1 Explanation: s can be split into "LLLLRRRR".
Example 4:
Input: s = "RLRRRLLRLL" Output: 2 Explanation: s can be split into "RL", "RRRLLRLL", since each substring contains an equal number of 'L' and 'R'
Constraints:
1 <= s.length <= 1000
s[i] = 'L' or 'R'
Solution(javascript)
const balancedStringSplit = (s = '') => {
let ls = 0
let rs = 0
let count = 0
for (let i = 0; i < s.length; i++) {
if (s[i] === 'R') {
rs += 1
}
if (s[i] === 'L') {
ls += 1
}
if (ls === rs && ls !== 0) {
count += 1
ls = 0
rs = 0
}
}
return count
}