코딩테스트/프로그래머스

[프로그래머스 / Java] Lv2 - 이진 변환 반복하기

COBI-98 2023. 1. 4. 15:52

🔒 이진 변환 반복하기

✔ 문제 설명

🚩 요구사항 분석

  • 제거할 0의 개수 count에 저장
  • 1을 만들기 위해 반복되는 횟수 저장
  • 0을 제거한 후 남은 1의 개수를 이진 변환,
    스트링으로 변환하기위해 Integer.toBinaryString() 활용

🔑 문제풀이

class Solution {
    public int[] solution(String s) {
        int[] answer = new int[2];
        int zero = 0;
        int count = 0;
        int l = 0;
        while(!s.equals("1")){
            zero++;
            l=0;
            for(int i=0; i<s.length();i++){
                if(s.charAt(i) == '0'){
                  count++;  
                } else{
                  l++;
                }
            }         
            
            s= Integer.toBinaryString(l);
            
        }
        answer[0] = zero;
        answer[1] = count;
        return answer;
    }
}

💡 추가한 테스트 케이스

추가한 케이스는 없다

🎯 알아 볼 것