Notice
Recent Posts
Recent Comments
Link
«   2026/04   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30
Tags
more
Archives
Today
Total
관리 메뉴

유리의 개발새발

[Algorithms] 다음 큰 숫자 본문

Algorithms

[Algorithms] 다음 큰 숫자

yuri_ 2025. 7. 3. 13:12
반응형

https://school.programmers.co.kr/learn/courses/30/lessons/12911

 

프로그래머스

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

programmers.co.kr

아...

문제를 보는 순간 작년 생각이 났다.

모 대기업의 코테에 2진수 가지고 별 짓거리 다 하던...

 

“2진수 만들어서 뭐 하면 되나?”

 

라고 생각하는 순간 우리는 코테 탈락입니다.

그냥 2진수로 바꿔서 1의 개수만 세면 된다.

우선 이진수 구하는 방식은 2로 나눈 나머지를 역순으로 쭉 이어붙이면 된다.

하.지.만 여기서는 이진수로 만들라는게 아니다!
대게, 진짜 다 2진수로 변환해서 비교하면 시간 복잡도가 아작이 납니다.

 

toString() 아시죠?

여기에는 radix로 몇 진수로 표현할지 옵셔널로 정할 수 있습니다.

이걸 몰라서 2진수 문제만 Swift로 풀었었다..............................아

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Number/toString

핵심은 : 2진수로 만들기 - 1의 개수 세기 - n보다 큰 수 중 찾기

function solution(n) {
  const countOnes = x => x.toString(2).split('0').join('').length;
  const target = countOnes(n);  
  let answer = n + 1;
    
  while (0.1 + 0.2 !== 0.3) {
    if (countOnes(answer) === target) return answer;
    answer++;
  }   
}

 

 

이러면 끝!

반응형

'Algorithms' 카테고리의 다른 글

[Algorithms] 기능개발  (4) 2025.07.10
[Algorithms] 피보나치수  (2) 2025.07.03
[Algorithms] 숫자의 표현  (1) 2025.07.02
[Algorithms] 할인 행사  (2) 2024.10.24
[Algorithms] 그래프란?  (2) 2024.10.19