배열 뒤집기

정수가 들어 있는 배열 num_list가 매개변수로 주어집니다. num_list의 원소의 순서를 거꾸로 뒤집은 배열을 return하도록 solution 함수를 완성해주세요.

 

function solution(num_list) {
    return num_list.reverse();
}

 

function solution(num_list) {
    var answer = [];
    var j = num_list.length
    for(var i = 1; i <= j; i++){
        answer.push(num_list[j-i])
    }
    return answer;
}

 

 

배열 원소의 길이

문자열 배열 strlist가 매개변수로 주어집니다. strlist 각 원소의 길이를 담은 배열을 retrun하도록 solution 함수를 완성해주세요.

 

function solution(strlist) {
    let num = [];
    for (let i = 0; i < strlist.length; i++) {
        num.push(strlist[i].length);
    }
    return num;
}

 

 

배열 자르기

정수 배열 numbers와 정수 num1num2가 매개변수로 주어질 때, numbers의 num1번 째 인덱스부터 num2번째 인덱스까지 자른 정수 배열을 return 하도록 solution 함수를 완성해보세요.

 

function solution(numbers, num1, num2) {
    let newNumbers = [];
    for (let i = 0; i < numbers.length; i++) {
        if (i > num1 && i < num2 || i === num1 || i === num2) {
            newNumbers.push(numbers[i]);
        }
    }
    return newNumbers;
}

 

아래가 더 간단했을 듯..

 

function solution(numbers, num1, num2) {
    var answer = [];

    for (let i = num1; i < num2+1; i++) {
        answer.push(numbers[i])
    }

    return answer;
}

 

 

최댓값 만들기 (1)

정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소 중 두 개를 곱해 만들 수 있는 최댓값을 return하도록 solution 함수를 완성해주세요.

 

function solution(numbers) {
    let newNumbers = [];
    for (let i = 0; i < numbers.length; i++) {
        for (let j = 0; j < numbers.length; j++) {
            if (i != j) {
                newNumbers.push(numbers[i] * numbers[j]) 
            }
        }
    }
    return Math.max.apply(null, newNumbers)
}

 

오름차순 함수를 활용해서 하는 방법도 있음

 

function solution(numbers) {
    numbers.sort((a,b)=>b-a);
    return numbers[0]*numbers[1];
}

 

 

중앙값 구하기

중앙값은 어떤 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값을 의미합니다. 예를 들어 1, 2, 7, 10, 11의 중앙값은 7입니다. 정수 배열 array가 매개변수로 주어질 때, 중앙값을 return 하도록 solution 함수를 완성해보세요.

 

function solution(array) {
    array.sort((a, b) => a-b);
    let arr = parseInt(array.length/2);
    
    return array[arr];
}

 

function solution(array) {
  return array.sort((a, b) => a - b)[Math.floor(array.length / 2)];
}

 

 

n의 배수 구하기

정수 n과 정수 배열 numlist가 매개변수로 주어질 때, numlist에서 n의 배수가 아닌 수들을 제거한 배열을 return하도록 solution 함수를 완성해주세요.

 

function solution(n, numlist) {
    var answer = [];
    
    for (let i of numlist) {
        if (i % n === 0) {
            answer.push(i);
        }
    }
    
    return answer;
}

 

다른 사람의 풀이

 

function solution(n, numlist) {
    return numlist.filter(num => num % n === 0);
}

'Algorithm' 카테고리의 다른 글

lv 0. 합성수 찾기  (0) 2023.01.24
lv.0 자릿수 더하기  (0) 2023.01.24
lv 0. 짝수, 홀수 문제  (0) 2023.01.23
lv.0 문자열 문제  (0) 2023.01.23
lv.0  (0) 2023.01.17

+ Recent posts