LeetCode-1221 Split a String in Balanced Strings
1. Description
给定一个字符串 s 是一个只包含 'L' or 'R' 的平衡串(L 和 R 数目一样多),求可以分成多少个平衡子串。
https://leetcode.com/problems/split-a-string-in-balanced-strings/
2. Solution
抓住子串中L和R数目相等这个条件,则从头扫描原串,分别记录L、R个数,如果相等一次,则构成平衡子串,最后放回最大个数。
3. Code
class Solution {
public int balancedStringSplit(String s) {
int splitNum = 0;
int lnum = 0, rnum = 0;
for (int i = 0; i < s.length(); i++) {
if (s.charAt(i) == 'L')
lnum++;
else
rnum++;
if (lnum == rnum)
splitNum++;
}
return splitNum;
}
}

浙公网安备 33010602011771号