본문 바로가기

카테고리 없음

[Algorithm] 문자열 나누기 (w/ Swift)

주어진 문자열을 문자 배열로 변환한 후, 연속된 문자 그룹을 세는 방식으로 풀면 된다.

연속된 문자 그룹이 완성될 때마다 result를 증가시키고,

완성되지 못한 그룹이 있을 경우에도 result를 증가시킨다.


 

문자열 나누기(shortcuts)

 

프로그래머스

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

programmers.co.kr

 

language = swift

func solution(_ s: String) -> Int {
    var stringValue = Array(s)
    var x = stringValue[0]
    var x_cnt = 0
    var not_x_cnt = 0
    var result = 0

    for i in stringValue {
        if x_cnt != 0 && x_cnt == not_x_cnt {
            result += 1
            x_cnt = 0
            not_x_cnt = 0
            x = i
        }

        if x == i {
            x_cnt += 1
        } else {
            not_x_cnt += 1
        }
    }

    return result + 1
}

 

최종적으로 결과값에 1을 더한 값을 반환