반응형

 

인자로 문자열을 받습니다.

 

문자열에는 R 혹은 L만 존재합니다.

 

이때, R과 L의 숫자가 같도록 substring을 하여 가장 많은 substring 갯수를 구해야 합니다.

 

이 문제는, R과 L의 숫자를 바꿀수 있는 조건이 없습니다.

그렇기 때문에, 단순히 iterate를 돌며 R과 L의 갯수가 같을 때면 그냥 substring을 한다고 생각하시면 됩니다.

 

저는 아래와 같이 코드를 짰습니다.

class Solution:
    def balancedStringSplit(self, s: str) -> int:
        r_cnt = 0
        l_cnt = 0
        res = 0

        for i in s:
            if i == "L":
                l_cnt += 1
            else:
                r_cnt += 1

            if l_cnt == r_cnt:
                res += 1
                l_cnt = 0
                r_cnt = 0
        return res

 

감사합니다.

반응형

'Algorithm > greedy' 카테고리의 다른 글

leetcode - Last Stone Weight  (0) 2020.03.12
leetcode - Two City Scheduling  (0) 2020.03.12
leetcode - Maximize Sum Of Array After K Negations  (0) 2020.03.11
leetcode - Walking Robot Simulation  (2) 2020.03.10
leetcode - Lemonade Change  (0) 2020.03.05

+ Recent posts