초코딩(chocoding)

[Programmers / java] 문자열 나누기 본문

[Java] 알고리즘 문제풀이

[Programmers / java] 문자열 나누기

sweetychocoding 2024. 4. 17. 13:35
728x90

 

https://school.programmers.co.kr/learn/courses/30/lessons/140108

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

import java.util.*;

class Solution {
    public int solution(String s) {
        int answer = 0;
        char[] cArr = s.toCharArray();
        char x = cArr[0];
        int cntX = 0, cntNotX = 0;
        
        for (int i = 0; i < cArr.length; i++) {
            if (cArr[i] == x) {
                cntX++;
            } else {
                cntNotX++;
            }
            
            if (cntX == cntNotX) {
                answer++;
                cntX = 0;
                cntNotX = 0;
                
                if (i + 1 < cArr.length) {
                    x = cArr[i + 1];
                } else {
                    x = cArr[cArr.length - 1];
                }
            } else if (cntX != cntNotX && i == cArr.length - 1) {
                answer++;
            }
        }
        
        
        return answer;
    }
}

 

728x90