๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Programmers

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 1๋‹จ๊ณ„ : ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ์ˆซ์ž ๋ฐฐ์—ด

by ์ฝ”ํŒŒ์นด 2022. 11. 15.
728x90

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 1๋‹จ๊ณ„ : ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ์ˆซ์ž ๋ฐฐ์—ด

์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต > ์—ฐ์Šต๋ฌธ์ œ > ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ์ˆซ์ž ๋ฐฐ์—ด


๐Ÿ’ฉ ๋ฌธ์ œ ์„ค๋ช…

array์˜ ๊ฐ element ์ค‘ divisor๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ๊ฐ’์„ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•œ ๋ฐฐ์—ด์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. divisor๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” element๊ฐ€ ํ•˜๋‚˜๋„ ์—†๋‹ค๋ฉด ๋ฐฐ์—ด์— -1์„ ๋‹ด์•„ ๋ฐ˜ํ™˜ํ•˜์„ธ์š”.

๐Ÿ’ฉ ์ œํ•œ ์กฐ๊ฑด

โ˜๏ธ arr์€ ์ž์—ฐ์ˆ˜๋ฅผ ๋‹ด์€ ๋ฐฐ์—ด์ž…๋‹ˆ๋‹ค.
โœŒ๏ธ ์ •์ˆ˜ i, j์— ๋Œ€ํ•ด i โ‰  j ์ด๋ฉด arr[i] โ‰  arr[j] ์ž…๋‹ˆ๋‹ค.
๐Ÿค˜ divisor๋Š” ์ž์—ฐ์ˆ˜์ž…๋‹ˆ๋‹ค.
๐ŸคŸ array๋Š” ๊ธธ์ด 1 ์ด์ƒ์ธ ๋ฐฐ์—ด์ž…๋‹ˆ๋‹ค.

๐Ÿ’ฉ ๋ฌธ์ œ ํ’€์ด

function solution(arr, divisor) {
    var answer = [];
    for(i=0; i<arr.length; i++){
        if(arr[i] % divisor == 0){answer.push(arr[i])}
    }
    answer.sort(function(a,b){return a-b});
    if(!answer.length){answer.push(-1)}
    return answer;
}

divisor๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ๊ฐ’์€ push()๋กœ answer ๋ฐฐ์—ด ๋‚ด์— ์‚ฝ์ž…ํ•ด ์ฃผ์—ˆ์Šต๋‹ˆ๋‹ค. for๋ฌธ๊ณผ if๋ฌธ์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ฌด์—‡์ด๋“  ์ถœ๋ ฅํ•  ์ˆ˜ ์žˆ๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ... ๊ต‰์žฅํ•˜์ง€ ์•Š๋‚˜์š”. ๊ทธ๋‚˜์ €๋‚˜ ๋“œ๋””์–ด sort()๋ฅผ ์ฒ˜์Œ ์จ๋ณธ ๋‚˜ ์นญ์ฐฌํ•ด!

๐Ÿ’ฉ ๋‹ค๋ฅธ ํ’€์ด

function solution(arr, divisor) {
    var answer = arr.filter(v => v % divisor == 0);
    return answer.length == 0 ? [-1] : answer.sort((a,b) => a-b);
}

filter() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ๊ฐ’๋งŒ answer์— ๋‹ด์•„์ค€ ๋’ค, ์ •๋ ฌํ•ด ์ฃผ์—ˆ๋„ค์š”. ๊ฐ„๋‹จํ•˜๊ตฐ์š”.

728x90

๋Œ“๊ธ€

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๐Ÿฆ™

CSS
๊ด‘๊ณ  ์ค€๋น„์ค‘