class Solution {
public int[] solution(String s) {
int[] answer = new int[2];
int seqCount = 0;
int zeroCount = 0;
while(s.length() != 1){
String deleteZero = "";
String binary = "";
for(int i=0; i<s.length(); i++){
if(s.charAt(i) == '1'){
deleteZero += s.charAt(i);
}else{
zeroCount++;
}
}
s = deleteZero;
int len = s.length();
binary = Integer.toBinaryString(len);
s = binary;
seqCount++;
}
answer[0] = seqCount;
answer[1] = zeroCount;
return answer;
}
}
1. 입력받은 s 문자열에 1이 들어가 있으면 0을 제거한 문자열을 담는 곳에 추가
2. 입력받은 s 문자열에 0이 들어가 있으면 0을 제거했다는 count 개수 증가
3. 0을 제거한 문자열에 대해 길이 값을 2진수로 변환
4. 1~3을 반복하여 길이가 1이면 종료
'📖Algorithm > Simulation, Math' 카테고리의 다른 글
자바 [Programmers] 2단계 - 점프와 순간이동 (0) | 2024.12.03 |
---|---|
자바 [Programmers] 2단계 - JadenCase 문자열 만들기 (0) | 2024.11.28 |
자바 [Programmers] 2단계 - 다음 큰 숫자 (0) | 2024.11.28 |
자바 [Programmers] 2단계 - 피보나치 수 (0) | 2024.11.28 |
자바 [Programmers] 2단계 - 올바른 괄호 (0) | 2024.11.25 |