본문 바로가기

Algorithm/Brute Force

(Python3) - LeetCode (Medium) : 1422. Maximum Score After Splitting a String

반응형

https://leetcode.com/problems/maximum-score-after-splitting-a-string

전수조사로 해결한 문제였습니다.

📕 풀이방법

📔 입력 및 초기화

점수 score를 선언 후 0으로 초기화합니다.

📔 풀이과정

1. 주어진 substring과 비교할 문자 mode를 입력받아 특정문자의 개수를 반환하는 getScore를 구현합니다.

 

2. s에 대해 1부터 len(s)-1까지 for loop를 수행하며 left, right로 부분 문자열을 만들고 각각 getScore한 결과의 최댓값을 score에 저장합니다.

📔 정답 출력 | 반환

score를 반환합니다.


📕 Code

📔 Python3

class Solution:
    def maxScore(self, s: str) -> int:
        score = 0
        def getScore(substring, mode):
            return sum(1 for char in substring if char == mode)

        for i in range(1, len(s)):
            left = s[:i]
            right = s[i:]
            score = max(score, getScore(left,'0') + getScore(right,'1'))
        return score

*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.