Java & Spring/코딩테스트

29일차 - 알고리즘 코드카타

DJ.Kang 2024. 8. 23. 07:52

- 회고

77. 이진 변환 반복하기 : https://school.programmers.co.kr/learn/courses/30/lessons/70129

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

- 풀이 과정

  1. 회차를 위한 변수 i, 제거된 0의 개수를 카운팅하기위한 변수 remove, 최초 s문자열의 길이 변수 n 선언
  2. while문을 통해 s가 "1"이 될 때 까지 반복
  3. s.replaceAll()을 통해 0제거
  4. 최초 s의 길이인 n에서 변경된 문자열 s의 길이를 뺀(이번 회차 제거된 0의 개수) 값을 remove에 더해준다.
  5. 숫자를 이진법으로 바꿔주는 toBinary()메서드 구현
  6. 변경된 문자열의 길이를 이진법으로 변경한다.
  7. 변경된 문자열을 n에 대입한다.
  8. i를 증가시켜 다음 회차를 진행한다.

- 회고 

  1. 숫자를 이진법 문자열로 변환해주는 Integer.toBinaryString()이란 메서드가 존재했다.
  2. zereRemove변수와, 마지막 if문은 필요가없다.

 

 

 

- 진행

일자 완료 번호
24.07.16 ~ 24.07.31 1~63
24.08.01 ~ 24.08.20 64~75
24.08.21 76
24.08.23 77