C# 알고리즘 코드카타

77. 이진 변환 반복하기

잼잼재미 2024. 2. 16. 09:37

 

using System;

public class Solution {
    public int[] solution(string s) {
        int[] answer = new int[2];
        string str;
        int count = 0;
        int zeroCount = 0;
        int newStrLength;
        int count2 = 0;

        str = s;
        while (true)
        {
            for (int i = 0; i < str.Length; ++i)
            {
                if (str[i] == '0') count++;
            }
            zeroCount += count;
            newStrLength = str.Length - count;
            count2++;
            count = 0;
            str = Convert.ToString(newStrLength, 2);
            if (str == "1") break;
        }

        answer[0] = count2;
        answer[1] = zeroCount;
        return answer;
    }
}

 

Convert.ToString() 함수를 통해 이진 변환을 쉽게 할 수 있었다.

'C# 알고리즘 코드카타' 카테고리의 다른 글

79. 카펫  (0) 2024.02.21
78. 피보나치 수  (0) 2024.02.21
76. JadenCase 문자열 만들기  (0) 2024.02.13
75. 최대값과 최솟값  (0) 2024.02.07
74. 신고 결과 받기  (0) 2024.02.07