ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ์ ํ”„์™€ ์ˆœ๊ฐ„์ด๋™(lv2)

2023. 6. 25. 21:00ยท๐Ÿ”’Algorithm

๋ฌธ์ œ ๐Ÿ”ฝ

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

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr

๋‹ค๋ฅธ์‚ฌ๋žŒ ํ’€์ด ๐Ÿ”ฝ

function solution(n)
{
    if(n == 1) return 1;

    var battery = 0;
    // n์„ 2๋กœ ๋‚˜๋ˆ ๊ฐ€๋ฉฐ ๋‚˜์˜ค๋Š” ๋‚˜๋จธ์ง€์˜ ํ•ฉ
    while(n>0) {
        battery += n%2;
        n = Math.floor(n/2);
    }

    return battery;
}

๋‚ดํ’€์ด๐Ÿ”ฝ

1. ์„ฑ๊ณต โญ• 

function solution(n)
{
    let answer = 0;

    while(1){
        if(n===1){
            ++answer
            break;
        }
        if(n%2===1){
            n=(n-1)/2
            ++answer;
        }else{
            n=n/2
        }
    }
    return answer;
}

๋А๋‚€์ ๐Ÿ”ฝ

์ˆœ๊ฐ„์ธ๋™์€ x2๋ฅผ ํ•˜๋ฉด์„œ ์›€์ง์ด๊ณ  ์ด๋ฅผ ์ตœ๋Œ€ํ•œ ํ™œ์šฉํ•ด์•ผ ํ•œ๋‹ค.

์ฃผ์–ด์ง„ n์„ 2๋กœ ๋‚˜๋ˆ ์„œ ๋–จ์–ด์ง„๋‹ค๋ฉด ๋ฐฐํ„ฐ๋ฆฌ ์†Œ๋ชจ์—†์ด ๊ทธ ์ „๋‹จ๊ณ„๋กœ ์›€์ง์ผ์ˆ˜ ์žˆ๋‹ค

๋งŒ์•ฝ n์ด 2๋กœ ๋‚˜๋ˆด์„ ๋•Œ 1๋กœ ๋–จ์–ด์ง„๋‹ค๋ฉด ๋ฐฐํ„ฐ๋ฆฌ 1๋ฅผ ์†Œ๋ชจํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์ตœ์†Œํ•œ์˜ ๋ฐฐํ„ฐ๋ฆฌ ์†Œ๋ชจ๋Ÿ‰์„ ๋„์ถœ ํ–ˆ๋‹ค.

'๐Ÿ”’Algorithm' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ๋ฉ€๋ฆฌ๋›ฐ๊ธฐ(lv2)  (0) 2023.06.27
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > N๊ฐœ์˜ ์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜(lv2)  (0) 2023.06.26
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ๊ตฌ๋ช…๋ณดํŠธ(lv2)  (1) 2023.06.24
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ์˜ˆ์ƒ ๋Œ€์ง„ํ‘œ(lv2)  (0) 2023.06.23
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ์นดํŽซ (lv2)  (0) 2023.06.20
'๐Ÿ”’Algorithm' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ๋ฉ€๋ฆฌ๋›ฐ๊ธฐ(lv2)
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > N๊ฐœ์˜ ์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜(lv2)
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ๊ตฌ๋ช…๋ณดํŠธ(lv2)
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ์˜ˆ์ƒ ๋Œ€์ง„ํ‘œ(lv2)
devWarrior
devWarrior
  • devWarrior
    devWarrior
    devWarrior
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๐ŸงฉDev (263)
      • โญFE (34)
      • ๐Ÿ”’Algorithm (155)
      • โž•Etc. (11)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ํƒœ๊ทธ
    • ๋ฐฉ๋ช…๋ก
    • ๊ธ€์“ฐ๊ธฐ
    • ๊ด€๋ฆฌ
  • ๋งํฌ

  • ๊ณต์ง€์‚ฌํ•ญ

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    BFS
    DFS
    react
    ์•Œ๊ณ ๋ฆฌ์ฆ˜
    ๊ตฌํ˜„
    dp
    ๊ทธ๋ฆฌ๋””
    ๊ณจ๋“œ5
    js
    ํ”„๋ก ํŠธ์—”๋“œ
    FE
    ์˜ค๋ธ”์™„
    Easy
    Lv2
    ์‹ค๋ฒ„4
    ์ž์Šค
    ์‹ค๋ฒ„2
    ์ฝ”ํ…Œ
    ๋ฐฑ์ค€
    ์‹ค๋ฒ„1
    ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ
    ์ฝ”๋”ฉํ…Œ์ŠคํŠธ
    Algorithm
    ์‹ค๋ฒ„3
    ํ‹ฐ์Šคํ† ๋ฆฌ์ฑŒ๋ฆฐ์ง€
    leetcode
    node.js
    javascript
    ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
    nodejs
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
devWarrior
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ’€์ด(js) > ์ ํ”„์™€ ์ˆœ๊ฐ„์ด๋™(lv2)
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”