반응형

코딩테스트 20

코딩테스트

1. 정수 num과 k가 매개변수로 주어질 때, num을 이루는 숫자 중에 k가 있으면 num의 그 숫자가 있는 자리 수를 return하고 없으면 -1을 return 하도록 solution 함수를 완성해보세요. function solution(num, k) { let index = num.toString().indexOf(k); return (index != -1) ? index+1 : -1; } 2. 정수 n과 정수 배열 numlist가 매개변수로 주어질 때, numlist에서 n의 배수가 아닌 수들을 제거한 배열을 return하도록 solution 함수를 완성해주세요. function solution(n, numlist) { var answer = []; numlist.forEach(el => { i..

코딩테스트 2023.06.10

코딩테스트

1. 머쓱이는 할머니께 생신 축하 편지를 쓰려고 합니다. 할머니가 보시기 편하도록 글자 한 자 한 자를 가로 2cm 크기로 적으려고 하며, 편지를 가로로만 적을 때, 축하 문구 message를 적기 위해 필요한 편지지의 최소 가로길이를 return 하도록 solution 함수를 완성해주세요. function solution(message) { let arr = message.split(''); return (arr.length) * 2; } 2. 정수 배열 array가 매개변수로 주어질 때, 가장 큰 수와 그 수의 인덱스를 담은 배열을 return 하도록 solution 함수를 완성해보세요. function solution(array) { let num = 0, index = 0; barr = []; a..

코딩테스트 2023.06.07

코딩테스트

1. 2차원 좌표 평면에 변이 축과 평행한 직사각형이 있습니다. 직사각형 네 꼭짓점의 좌표 [[x1, y1], [x2, y2], [x3, y3], [x4, y4]]가 담겨있는 배열 dots가 매개변수로 주어질 때, 직사각형의 넓이를 return 하도록 solution 함수를 완성해보세요. function solution(dots) { let wiarr = [], hearr = []; dots.forEach(e => { wiarr.push(e[0]); hearr.push(e[1]); }); let wid = Math.max(...wiarr) - Math.min(...wiarr); let hei = Math.max(...hearr) - Math.min(...hearr); return Math.abs(wid)..

코딩테스트 2023.06.06

코딩테스트

배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 1. array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다. 2. 1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다. 3. 2에서 나온 배열의 3번째 숫자는 5입니다. 배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 solution 함수를 작성해주세요. 제한 조건 🥨array의 길이는 1 이상 100 이하입..

코딩테스트 2023.06.05

코딩테스트

문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱스 1의 문자 "u", "e", "a"로 strings를 정렬합니다. 🐕strings는 길이 1 이상, 50이하인 배열입니다. 🐕strings의 원소는 소문자 알파벳으로 이루어져 있습니다. 🐕strings의 원소는 길이 1 이상, 100이하인 문자열입니다. 🐕모든 strings의 원소의 길이는 n보다 큽니다. 🐕인덱스 1의 문자가 같은 문자열이 여럿 일 경우, 사전순으로 앞선 문자열이 앞쪽에 위치합니다. function solution(strings, n) { return s..

코딩테스트 2023.06.04

코딩테스트

1. 영어가 싫은 머쓱이는 영어로 표기되어있는 숫자를 수로 바꾸려고 합니다. 문자열 numbers가 매개변수로 주어질 때, numbers를 정수로 바꿔 return 하도록 solution 함수를 완성해 주세요. function solution(numbers) { let answer = numbers.replaceAll("zero", 0).replaceAll("one", 1).replaceAll("two", 2).replaceAll("three", 3).replaceAll("four", 4).replaceAll("five", 5).replaceAll("six", 6).replaceAll("seven", 7).replaceAll("eight", 8).replaceAll("nine", 9); return pa..

코딩테스트 2023.06.03

코딩테스트

1. 정수 배열 array와 정수 n이 매개변수로 주어질 때, array에 들어있는 정수 중 n과 가장 가까운 수를 return 하도록 solution 함수를 완성해주세요. function solution(array, n) { let ans = []; array.forEach((item) => { ans.push(Math.abs(item - n)); }) const min = Math.min(...ans); let check = []; for(let index = 0; index < ans.length; index++){ if(ans[index] === min){ check.push(array[index]); } } return Math.min(...check); } 2. 머쓱이는 친구들과 369게임을 ..

코딩테스트 2023.06.01

코딩테스트

1. 숫자와 "Z"가 공백으로 구분되어 담긴 문자열이 주어집니다. 문자열에 있는 숫자를 차례대로 더하려고 합니다. 이 때 "Z"가 나오면 바로 전에 더했던 숫자를 뺀다는 뜻입니다. 숫자와 "Z"로 이루어진 문자열 s가 주어질 때, 머쓱이가 구한 값을 return 하도록 solution 함수를 완성해보세요. function solution(s) { let sum = 0; let arr = s.split(" "); for(let i=0; i { answer.push(str.length); }); return answer; } 3. 문자열 my_string이 매개변수로 주어집니다. my_string에서 중복된 문자를 제거하고 하나의 문자만 남긴 문자열을 return하도록 solution 함수를 완성해주세요. ..

코딩테스트 2023.05.31

코딩테스트

1. 영어에선 a, e, i, o, u 다섯 가지 알파벳을 모음으로 분류합니다. 문자열 my_string이 매개변수로 주어질 때 모음을 제거한 문자열을 return하도록 solution 함수를 완성해주세요. function solution(str){ let answer = str.split('a').join(''); answer = answer.split('e').join(''); answer = answer.split('i').join(''); answer = answer.split('o').join(''); answer = answer.split('u').join(''); return answer; }; 2. 문자열 my_string이 매개변수로 주어질 때, my_string 안에 있는 숫자만 골라 ..

코딩테스트 2023.05.31

코딩테스트

1. 머쓱이는 직육면체 모양의 상자를 하나 가지고 있는데 이 상자에 정육면체 모양의 주사위를 최대한 많이 채우고 싶습니다. 상자의 가로, 세로, 높이가 저장되어있는 배열 box와 주사위 모서리의 길이 정수 n이 매개변수로 주어졌을 때, 상자에 들어갈 수 있는 주사위의 최대 개수를 return 하도록 solution 함수를 완성해주세요. function solution(box, n) { let answer = parseInt(box[0]/n)*parseInt(box[1]/n)*parseInt(box[2]/n); return answer; } 2. 약수의 개수가 세 개 이상인 수를 합성수라고 합니다. 자연수 n이 매개변수로 주어질 때 n이하의 합성수의 개수를 return하도록 solution 함수를 완성해주..

코딩테스트 2023.05.31

코딩테스트

1. 사분면은 한 평면을 x축과 y축을 기준으로 나눈 네 부분입니다. 사분면은 아래와 같이 1부터 4까지 번호를매깁니다. x 좌표와 y 좌표가 모두 양수이면 제1사분면에 속합니다. x 좌표가 음수, y 좌표가 양수이면 제2사분면에 속합니다. x 좌표와 y 좌표가 모두 음수이면 제3사분면에 속합니다. x 좌표가 양수, y 좌표가 음수이면 제4사분면에 속합니다. x 좌표 (x, y)를 차례대로 담은 정수 배열 dot이 매개변수로 주어집니다. 좌표 dot이 사분면 중 어디에 속하는지 1, 2, 3, 4 중 하나를 return 하도록 solution 함수를 완성해주세요. function solution(dot){ let answer; if(dot[0]>0){ if(dot[1]>0){ answer = 1; } e..

코딩테스트 2023.05.31

코딩테스트

1. 개미 군단이 사냥을 나가려고 합니다. 개미군단은 사냥감의 체력에 딱 맞는 병력을 데리고 나가려고 합니다. 장군개미는 5의 공격력을, 병정개미는 3의 공격력을 일개미는 1의 공격력을 가지고 있습니다. 예를 들어 체력 23의 여치를 사냥하려고 할 때, 일개미 23마리를 데리고 가도 되지만, 장군개미 네 마리와 병정개미 한 마리를 데리고 간다면 더 적은 병력으로 사냥할 수 있습니다. 사냥감의 체력 hp가 매개변수로 주어질 때, 사냥감의 체력에 딱 맞게 최소한의 병력을 구성하려면 몇 마리의 개미가 필요한지를 return하도록 solution 함수를 완성해주세요. function solution(hp) { let antG=parseInt(hp/5); let antS=parseInt((hp%5)/3); let..

코딩테스트 2023.05.31

코딩테스트

1. 정수 배열 numbers와 정수 num1, num2가 매개변수로 주어질 때, numbers의 num1번 째 인덱스부터 num2번째 인덱스까지 자른 정수 배열을 return 하도록 solution 함수를 완성해보세요. function solution(numbers, num1, num2) { let answer = numbers.slice(num1, (num2+1)) return answer; } 2. 우주여행을 하던 머쓱이는 엔진 고장으로 PROGRAMMERS-962 행성에 불시착하게 됐습니다. 입국심사에서 나이를 말해야 하는데, PROGRAMMERS-962 행성에서는 나이를 알파벳으로 말하고 있습니다. a는 0, b는 1, c는 2, ..., j는 9입니다. 예를 들어 23살은 cd, 51살은 fb..

코딩테스트 2023.05.31

코딩테스트

1. 문자열 my_string과 문자 letter이 매개변수로 주어집니다. my_string에서 letter를 제거한 문자열을 return하도록 solution 함수를 완성해주세요. function solution(my_string, letter) { let reg = new RegExp(letter, "g"); let answer = my_string.replace(reg, ''); return answer; } 2. 각에서 0도 초과 90도 미만은 예각, 90도는 직각, 90도 초과 180도 미만은 둔각 180도는 평각으로 분류합니다. 각 angle이 매개변수로 주어질 때 예각일 때 1, 직각일 때 2, 둔각일 때 3, 평각일 때 4를 return하도록 solution 함수를 완성해주세요. funct..

코딩테스트 2023.05.31

코딩테스트

1. 문자열 my_string이 매개변수로 주어집니다. my_string을 거꾸로 뒤집은 문자열을 return하도록 solution 함수를 완성해주세요. function solution(my_string) { let answer; answer = my_string.split('').reverse().join(''); return answer; } 2. "*"의 높이와 너비를 1이라고 했을 때, "*"을 이용해 직각 이등변 삼각형을 그리려고합니다. 정수 n 이 주어지면 높이와 너비가 n 인 직각 이등변 삼각형을 출력하도록 코드를 작성해보세요. const readline = require('readline'); const rl = readline.createInterface({ input: process.s..

코딩테스트 2023.05.31

코딩테스트

1. 머쓱이네 옷가게는 10만 원 이상 사면 5%, 30만 원 이상 사면 10%, 50만 원 이상 사면 20%를 할인해줍니다. 구매한 옷의 가격 price가 주어질 때, 지불해야 할 금액을 return 하도록 solution 함수를 완성해보세요. function solution(price) { let answer; if(price >= 100000){ answer = Math.floor(price * 0.95); if(price >= 300000){ answer = Math.floor(price * 0.9); if(price >= 500000){ answer = Math.floor(price * 0.8); } } } else { answer = price; } return answer; } 2. 머쓱이는..

코딩테스트 2023.05.31

코딩테스트 공부하기

머쓱이네 옷가게는 10만 원 이상 사면 5%, 30만 원 이상 사면 10%, 50만 원 이상 사면 20%를 할인해줍니다. 구매한 옷의 가격 price가 주어질 때, 지불해야 할 금액을 return 하도록 solution 함수를 완성해보세요. 입출력 예 price result 150,000 142,500 580,000 464,000 function solution(price) { let discount = 0; if (price >= 500000) { discount = 0.2; } else if (price >= 300000) { discount = 0.1; } else if (price >= 100000) { discount = 0.05; } const payableAmount = price - (pr..

코딩테스트 2023.05.22

코딩테스트 공부

머쓱이네 피자가게는 피자를 일곱 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 주어질 때, 모든 사람이 피자를 한 조각 이상 먹기 위해 필요한 피자의 수를 return 하는 solution 함수를 완성해보세요. 입출력 예 n result 7 1 1 1 15 3 function solution(n) { var answer = Math.ceil(n / 7); // 피자의 수 계산 return answer; } Math.ceil() 함수는 주어진 숫자를 올림하여 반환하는 JavaScript의 내장 함수입니다. 올림은 주어진 숫자보다 크거나 같은 정수 중에서 가장 작은 정수를 의미합니다. 예를 들어, Math.ceil(4.2)의 결과는 5입니다. 소수점 이하가 존재하는 숫자를 올림하여 정수로 반환합니다..

코딩테스트 2023.05.21
728x90
반응형