참치코더의 꿈 메모장

알고리즘 82일차 - 프로그래머스 기출 문제(JAVA) / 이진 변환 반복하기 본문

잡다한 웹지식

알고리즘 82일차 - 프로그래머스 기출 문제(JAVA) / 이진 변환 반복하기

참치깡 2025. 7. 29. 19:38
728x90

전체 코드 부분

 

- 매개변수 s로 들어온 2진수 문자열이 1이 될때 까지 0을 제거하면서 제거한 0의 개수와 0을 제거한 문자열 길이가

  계속해서 1이 될때까지의 횟수를 구하는 문제이다.

 

- 일단 2진수를 변환했을때의 count 숫자와 0의 개수를 세는 int 변수를 선언해 주었다.

 

- while문을 사용해 문제에서 1이 되었을때 종료되도록 만들라고 했으므로 s값이 1이 아닐때에만 계속해서 돌도록 했고

  Stream을 사용해서 문자열 0의 개수를 구해주었다.

 

- 그리고 s의 0의 값을 replace 메서드를 이용하여 아무것도 없는 ""로 치환을 해주어 0을 다 날려주었고

- 변환 횟수를 1증가 시키면서 0을 제거한 s의 길이를 구해 2진수 변환 시켜주었다.

 

- 이렇게 while문이 false가 나올때 까지 반복하면 총 제거한 0의 개수와 2진수 변환 횟수를 구할 수 있다 ^^

 

https://school.programmers.co.kr/questions/89697

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

부산 바닷가 갈매기때

728x90
Comments