Notice
Recent Posts
Recent Comments
Link
ยซ   2024/12   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
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 31
Archives
Today
Total
๊ด€๋ฆฌ ๋ฉ”๋‰ด

Lennon FE

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค Lv.2] n์ง„์ˆ˜ ๊ฒŒ์ž„(js) ๋ณธ๋ฌธ

๐Ÿ”ฅ Algorithm/Programmers

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค Lv.2] n์ง„์ˆ˜ ๊ฒŒ์ž„(js)

Lennon 2022. 1. 22. 07:11
728x90
๋ฐ˜์‘ํ˜•

https://programmers.co.kr/learn/courses/30/lessons/17687?language=javascript 

 

์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - [3์ฐจ] n์ง„์ˆ˜ ๊ฒŒ์ž„

N์ง„์ˆ˜ ๊ฒŒ์ž„ ํŠœ๋ธŒ๊ฐ€ ํ™œ๋™ํ•˜๋Š” ์ฝ”๋”ฉ ๋™์•„๋ฆฌ์—์„œ๋Š” ์ „ํ†ต์ ์œผ๋กœ ํ•ด์˜ค๋Š” ๊ฒŒ์ž„์ด ์žˆ๋‹ค. ์ด ๊ฒŒ์ž„์€ ์—ฌ๋Ÿฌ ์‚ฌ๋žŒ์ด ๋‘ฅ๊ธ€๊ฒŒ ์•‰์•„์„œ ์ˆซ์ž๋ฅผ ํ•˜๋‚˜์”ฉ ์ฐจ๋ก€๋Œ€๋กœ ๋งํ•˜๋Š” ๊ฒŒ์ž„์ธ๋ฐ, ๊ทœ์น™์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ์ˆซ์ž๋ฅผ 0

programmers.co.kr

function solution(n, t, m, p){ 
    let changeNumber = [];
    let answer = '';
    let idx = p-1;
    
    for(let i=0; i<t*m; i++){
        changeNumber.push(i.toString(n));
    }
    
    changeNumber = changeNumber.join("");
    
    while(answer.length < t){
        answer+=changeNumber[idx].toUpperCase();
        idx+=m;
    }
    
    return answer;
}

changeNumber ๋ฐฐ์—ด์— i๊ฐ’์— ๋Œ€ํ•ด ์ง„์ˆ˜๋ณ€ํ™˜์„ ํ•œ ๊ฒƒ์„ pushํ•œ๋‹ค. 

๊ทธ ํ›„ join์œผ๋กœ ๋ฌธ์ž์—ด๋กœ ๋งŒ๋“ค์–ด์ค€๋‹ค.

 

ex) 2์ง„์ˆ˜๋ผ๋ฉด? => 0,1,2,3,4 => ['0', '1', '10', '11', '100'] => '011011100'   

 // t*m์€ ์ตœ์†Œํ•œ ์ €์ •๋„๋Š” ๋Œ์•„์•ผ ๋ฌธ์ œ๊ฐ€ ์—†๊ฒ ๋‹ค๊ณ  ์ •์˜ํ–ˆ๋‹ค.

 

๊ทธ ํ›„ ์ˆœ์„œ(p-1) ๋ฐ ์ฐธ๊ฐ€์ž ์ˆ˜(m)์™€ ๋งํ•ด์•ผํ•˜๋Š” ์ˆ˜(t)๋ฅผ ๊ณ ๋ คํ•ด while๋ฌธ์œผ๋กœ answer์— ๋‹ต์„ ์ถ”๊ฐ€ํ•ด์ฃผ๊ณ  ๋ฆฌํ„ดํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

728x90
๋ฐ˜์‘ํ˜•
Comments