TIL13-04 오늘의 코딩테스트

김태혁·2023년 1월 24일
0

TIL

목록 보기
41/205
  1. 문제 설명
    머쓱이네 피자가게는 피자를 여섯 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 매개변수로 주어질 때, n명이 주문한 피자를 남기지 않고 모두 같은 수의 피자 조각을 먹어야 한다면 최소 몇 판을 시켜야 하는지를 return 하도록 solution 함수를 완성해보세요.
function solution(n) {
    for (let i = 1; i <= n ; i++ ) {
        if( 6*i % n == 0 ) { // 한판에 6조각 이니 6*i판을 사람 수 n 으로 나눴을 때 나머지가 0인 i를 결과값으로 반환하면 된다.
            return i;
        }
    } 
}
  1. 문제 설명
    정수가 담긴 배열 numbers와 문자열 direction가 매개변수로 주어집니다. 배열 numbers의 원소를 direction방향으로 한 칸씩 회전시킨 배열을 return하도록 solution 함수를 완성해주세요.
function solution(numbers, direction) {
    if ( direction == "right") {
        numbers.unshift(numbers.pop(numbers)); // 배열의 맨끝 수를 맨앞으로 넣기
    } else if ( direction == "left") {
        numbers.push(numbers.shift(numbers));  // 배열의 첫번재 수를 맨뒤로 넣기
    } 
    return numbers;
}
  1. 문제 설명
    머쓱이는 직육면체 모양의 상자를 하나 가지고 있는데 이 상자에 정육면체 모양의 주사위를 최대한 많이 채우고 싶습니다. 상자의 가로, 세로, 높이가 저장되어있는 배열 box와 주사위 모서리의 길이 정수 n이 매개변수로 주어졌을 때, 상자에 들어갈 수 있는 주사위의 최대 개수를 return 하도록 solution 함수를 완성해주세요.
    box[0] = 가로
    box[1] = 세로
    box[2] = 높이
function solution(box, n) {
    return parseInt(box[0]/n)*parseInt(box[1]/n)*parseInt(box[2]/n);
            // 각 길이를 주사위모서리 길이 n 으로 나눈 값의 몫을 정수값만 취한다.
}
  1. 문제 설명
    정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소 중 두 개를 곱해 만들 수 있는 최댓값을 return하도록 solution 함수를 완성해주세요.
function solution(numbers) {
    let a = [];
    for (let i = 0; i < numbers.length; i++) {
        for (let j = 0; j < numbers.length; j++) {//중첩 반복문을 사용하여 각 원소들간의 곱을 구한다.
            if ( i !== j) {  // 각 원소들간의 곱이기 때문에 같은 원소들간의 곱은 if문으로 제외 시켜준다
                a.push(numbers[i] * numbers[j]); // 각 원소들의 값을 배열에 집어 넣어준다.
            }
        }
    }   return Math.max(...a);  // a 배열에서 최대값을 결과값으로 반환한다.
}
profile
도전을 즐기는 자

0개의 댓글