TIL 20221225 - 170번

hoin_lee·2022년 12월 26일
0

TIL

목록 보기
135/236

오늘 공부

알고리즘 문제 풀기(프로그래머스)
https://github.com/hoinlee-moi/Algorithm

JS기본문법 다시 공부
https://github.com/hoinlee-moi/ModernJS

React 강의 듣기
https://github.com/hoinlee-moi/React_prac


크리스마스에도 공부하기~

오늘 알고리즘

다음 큰 숫자 - https://school.programmers.co.kr/learn/courses/30/lessons/12911

function solution(n) {
    const count = n.toString(2).match(/1/gi).length
    while(true){
        n++
        if(n.toString(2).match(/1/gi).length===count) break;
    }
    return n;
}

정규식을 이용하는 방법도 있었고 비트 연산자를 통해 규칙을 파악하여 하는 방법도 있었지만 일단 한번
while을 이용해 풀어보자 생각햇는데 바로 통과가 됐다.

  • toString을 이용한 진법 변환과 문자열에서 일치 조건을 찾는 match함수를 이용 반환값이 array이 때문에 length로 1의 개수를 체크한다
  • while문을 통해 반복을 돌며 처음 1의 개수를 체크했던 걸 이용해 가장 작은 수를 찾아낸다.

React

리액트를 사용할 땐 컴포넌트의 관계와 주고받음 설계를 잘 생각해보자
이것 때문에 꼬이는 경우가 심심찮게 있는 것 같다.

profile
https://mo-i-programmers.tistory.com/

0개의 댓글