공부/코딩테스트 53

Q. 배열의 길이를 2의 거듭제곱으로 만들기

정수 배열 arr이 매개변수로 주어집니다. arr의 길이가 2의 정수 거듭제곱이 되도록 arr 뒤에 정수 0을 추가하려고 합니다. arr에 최소한의 개수로 0을 추가한 배열을 return 하는 solution 함수를 작성해 주세요.🚫제한 사항1 ≤ arr의 길이 ≤ 1,0001 ≤ arr의 원소 ≤ 1,000❗입출력 예arrresult[1, 2, 3, 4, 5, 6][1, 2, 3, 4, 5, 6, 0, 0][58, 172, 756, 89][58, 172, 756, 89]😀 내가 푼 답const solution = (arr) => { let length = arr.length const isPowerOfTwo = (num) => (num & (num - 1)) === 0 ..

Q. 이차원으로 만들기

정수 배열 num_list와 정수 n이 매개변수로 주어집니다. num_list를 다음 설명과 같이 2차원 배열로 바꿔 return하도록 solution 함수를 완성해주세요. num_list가 [1, 2, 3, 4, 5, 6, 7, 8] 로 길이가 8이고 n이 2이므로 num_list를 2 * 4 배열로 다음과 같이 변경합니다. 2차원으로 바꿀 때에는 num_list의 원소들을 앞에서부터 n개씩 나눠 2차원 배열로 변경합니다. 🚫제한 사항 1 ≤ my_string ≤ 110 my_string은 대문자, 소문자, 공백으로 구성되어 있습니다. 대문자와 소문자를 구분합니다. 공백(" ")도 하나의 문자로 구분합니다. 중복된 문자 중 가장 앞에 있는 문자를 남깁니다. ❗입출력 예 num_list n result ..

Q. 중복된 문자 제거

문자열 my_string이 매개변수로 주어집니다. my_string에서 중복된 문자를 제거하고 하나의 문자만 남긴 문자열을 return하도록 solution 함수를 완성해주세요. 🚫제한 사항 1 ≤ my_string ≤ 110 my_string은 대문자, 소문자, 공백으로 구성되어 있습니다. 대문자와 소문자를 구분합니다. 공백(" ")도 하나의 문자로 구분합니다. 중복된 문자 중 가장 앞에 있는 문자를 남깁니다. ❗입출력 예 my_string result "people" "peol" "We are the world" "We arthwold" 😀 내가 푼 답 const solution = (my_string) => { return [...new Set(my_string)].join("") } Set 중복되..

Q. 최대값 만들기(2)

정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소 중 두 개를 곱해 만들 수 있는 최댓값을 return하도록 solution 함수를 완성해주세요. 🚫제한 사항 -10,000 ≤ numbers의 원소 ≤ 10,000 2 ≤ numbers 의 길이 ≤ 100 ❗입출력 예 numbers result [1, 2, -3, 4, -5] 15 [0, -31, 24, 10, 1, 9] 240 [10, 20, 30, 5, 5, 20, 5] 600 😀 내가 푼 답 const solution = (numbers) => { let arr = [] for(let i = 0; i < numbers.length; i++){ for(let j = 0; j a - b); return Math.max(numbers..

Q. 주사위의 개수

머쓱이는 직육면체 모양의 상자를 하나 가지고 있는데 이 상자에 정육면체 모양의 주사위를 최대한 많이 채우고 싶습니다. 상자의 가로, 세로, 높이가 저장되어있는 배열 box와 주사위 모서리의 길이 정수 n이 매개변수로 주어졌을 때, 상자에 들어갈 수 있는 주사위의 최대 개수를 return 하도록 solution 함수를 완성해주세요. 🚫제한 사항 box의 길이는 3입니다. box[0] = 상자의 가로 길이 box[1] = 상자의 세로 길이 box[2] = 상자의 높이 길이 1 ≤ box의 원소 ≤ 100 1 ≤ n ≤ 50 n ≤ box의 원소 주사위는 상자와 평행하게 넣습니다. ❗입출력 예 box n result [1, 1, 1] 1 1 [10, 8, 6] 3 12 😀 내가 푼 답 const solutio..

Q. 가장 큰 수 찾기

정수 배열 array가 매개변수로 주어질 때, 가장 큰 수와 그 수의 인덱스를 담은 배열을 return 하도록 solution 함수를 완성해보세요. 🚫제한 사항 1 ≤ array의 길이 ≤ 100 0 ≤ array 원소 ≤ 1,000 array에 중복된 숫자는 없습니다. ❗입출력 예 array result [1, 8, 3] [8, 1] [9, 10, 11, 8] [11, 2] 😀 내가 푼 답 const solution = (array) => { return [Math.max(...array), array.indexOf(Math.max(...array))] } 😊 문제풀이 답안 OR 다른사람들 답안 // 1 function solution(array) { let max = Math.max(...array)..

Q. 인덱스 바꾸기

문자열 my_string과 정수 num1, num2가 매개변수로 주어질 때, my_string에서 인덱스 num1과 인덱스 num2에 해당하는 문자를 바꾼 문자열을 return 하도록 solution 함수를 완성해보세요. 🚫제한 사항 1 { const arr = [...my_string] arr.splice(num1, 1, my_string[num2]) arr.splice(num2, 1, my_string[num1]) return arr.join("") } 😊 문제풀이 답안 OR 다른사람들 답안 function solution(my_string, num1, num2) { my_string = my_string.split(''); [my_string[num1], my_string[num2]] = [my_s..

Q. 세균 증식

어떤 세균은 1시가에 두배만큼 증식한다고 합니다. 처음 세균의 마리수 n과 경과한 시간 t가 매개변수로 주어질 때 t시간 후 세균 수를 return 하도록 solution 함수를 완성해주세요. 🚫제한 사항 1 ≤ n ≤ 10 1 ≤ t ≤ 15 ❗입출력 예 n t result 2 10 2048 7 15 229,376 😀 내가 푼 답 const solution = (n, t) => { return n * (2 ** t) } 😊 문제풀이 답안 OR 다른사람들 답안 function solution(n, t) { return n

Q. 문자 반복 출력하기

문자열 my_string과 정수 n이 매개변수로 주어질 때, my_string에 들어있는 각 문자를 n만큼 반복한 문자열을 return 하도록 solution 함수를 완성해보세요. 🚫제한 사항 2 ≤ my_string 길이 ≤ 5 2 ≤ n ≤ 10 "my_string"은 영어 대소문자로 이루어져 있습니다. ❗입출력 예 my_string n result "hello" 3 "hhheeellllllooo" 😀 내가 푼 답 const solution = (my_string, n) => [...my_string].map(i => i.repeat(n)).join("") repeat() 문자열을 주어진 횟수만큼 반복해 붙인 새로운 문자열을 반환함 😊 문제풀이 답안 OR 다른사람들 답안 function soluti..

Q. 모음 제거

영어에선 a, e, i, o, u 다섯 가지 알파벳을 모음으로 분류합니다. 문자열 my_string이 매개변수로 주어질 때 모음을 제거한 문자열을 return하도록 solution 함수를 완성해주세요. 🚫제한 사항 my_string은 소문자와 공백으로 이루어져 있습니다. 1 ≤ my_string의 길이 ≤ 1,000 ❗입출력 예 my_string result "bus" "bs" "nice to meet you" "nc t mt y" 😀 내가 푼 답 const solution = my_string => my_string.replace(/[aeiou]/g, "") 😊 문제풀이 답안 OR 다른사람들 답안 function solution(my_string) { return [...my_string] .filte..