프로그래머스 이진 변환 반복하기 (Kotlin, 코틀린)

jonghyukLee·2023년 3월 25일
0

이번에 풀어본 문제는
프로그래머스 이진 변환 반복하기
입니다.

📕 문제 링크

❗️코드

class Solution {
    fun solution(s: String): IntArray {
        val answer: IntArray = intArrayOf(0, 0)

    var str = s
    while (str != "1") {
        answer[0]++
        val beforeLen = str.length
        str = str.replace("0", "")
        val afterLen = str.length
        answer[1] += (beforeLen - afterLen)

        str = Integer.toBinaryString(afterLen)
    }

    return answer
    }
}

📝 풀이

문제 순서는 아래와 같습니다.

  1. 문자열에서 0 제거
  2. 제거된 문자열의 길이를 2진수로 변환
  3. 문자열이 "1" 이면 종료

위 과정에서 수행한 반복 수와 제거된 0의 개수를 배열 형태로 출력하는 문제입니다.
{반복 수, 제거된 0의 개수}

replace 함수를 사용해야할 것 같아 코틀린으로 풀어보았습니다.

profile
머무르지 않기!

0개의 댓글