๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

Programmers Lv.1 : ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ์ˆซ์ž ๋ฐฐ์—ด

by Youcodein 2022. 11. 14.
728x90
๋ฐ˜์‘ํ˜•

Programmers Lv.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]);
    }
  }
  if(answer.length == 0) {
    answer.push(-1);
  }
  answer.sort((a,b) => a - b);
  return answer;
}

๋ฐฐ์—ด์„ divisor๋กœ ๋‚˜๋ˆด์„๋•Œ ๋‚˜์˜ค๋Š” ๊ฐ’์ด 0์ด๋ฉด ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ์ˆซ์ž๋ฅผ ๊ณจ๋ผ๋ƒ…๋‹ˆ๋‹ค.
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()์™€ ์‚ผํ•ญ์—ฐ์‚ฐ์ž ์‚ฌ์šฉ

728x90
๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€