본문 바로가기

Algorithm/Programmers

(97)
(JS) [Programmers - 외계행성의 나이] - 2023. 2.15.(수) 문제 우주여행을 하던 머쓱이는 엔진 고장으로 PROGRAMMERS-962 행성에 불시착하게 됐습니다. 입국심사에서 나이를 말해야 하는데, PROGRAMMERS-962 행성에서는 나이를 알파벳으로 말하고 있습니다. a는 0, b는 1, c는 2, ..., j는 9입니다. 예를 들어 23살은 cd, 51살은 fb로 표현합니다. 나이 age가 매개변수로 주어질 때 PROGRAMMER-962식 나이를 return하도록 solution 함수를 완성해주세요. 제한사항 age는 자연수입니다. age ≤ 1,000 PROGRAMMERS-962 행성은 알파벳 소문자만 사용합니다. Solution.js function solution(age) { const alphabet = "abcdefghij"; return age...
(JS) [Programmers - 인덱스 바꾸기] - 2023. 2.15.(수) 문제 문자열 my_string과 정수 num1, num2가 매개변수로 주어질 때, my_string에서 인덱스 num1과 인덱스 num2에 해당하는 문자를 바꾼 문자열을 return 하도록 solution 함수를 완성해보세요. 제한사항 1
(JS) [Programmers - 가장 큰 수 찾기] - 2023. 2.15.(수) 문제 정수 배열 array가 매개변수로 주어질 때, 가장 큰 수와 그 수의 인덱스를 담은 배열을 return 하도록 solution 함수를 완성해보세요. 제한사항 1 ≤ array의 길이 ≤ 100 0 ≤ array 원소 ≤ 1,000 array에 중복된 숫자는 없습니다. Solution.js function solution(array) { const max = Math.max(...array); return [max, array.findIndex((it) => it===max)]; } 출처 : 프로그래머스 코딩테스트 연습, https://school.programmers.co.kr/learn/courses/30/lessons/120899
(JS) [Programmers - 최댓값 만들기(2)] - 2023. 2.14.(화) 문제 정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소 중 두 개를 곱해 만들 수 있는 최댓값을 return하도록 solution 함수를 완성해주세요. 제한사항 -10,000 ≤ numbers의 원소 ≤ 10,000 2 ≤ numbers 의 길이 ≤ 100 Solution.js function solution(numbers) { numbers.sort((a, b) => b - a); return Math.max( numbers[0] * numbers[1], numbers[numbers.length - 2] * numbers[numbers.length - 1] ); } 출처 : 프로그래머스 코딩테스트 연습, https://school.programmers.co.kr/learn/cour..
(JS) [Programmers - 배열 회전시키기] - 2023. 2.14.(화) 문제 정수가 담긴 배열 numbers와 문자열 direction가 매개변수로 주어집니다. 배열 numbers의 원소를 direction방향으로 한 칸씩 회전시킨 배열을 return하도록 solution 함수를 완성해주세요. 제한사항 3 ≤ numbers의 길이 ≤ 20 direction은 "left" 와 "right" 둘 중 하나입니다. Solution.js function solution(numbers, direction) { direction === "right" ? numbers.unshift(numbers.pop()) : numbers.push(numbers.shift()); return numbers; } 출처 : 프로그래머스 코딩테스트 연습, https://school.programmers.c..
(JS) [Programmers - 주사위의 개수] - 2023. 2.13.(월) 문제 머쓱이는 직육면체 모양의 상자를 하나 가지고 있는데 이 상자에 정육면체 모양의 주사위를 최대한 많이 채우고 싶습니다. 상자의 가로, 세로, 높이가 저장되어있는 배열 box와 주사위 모서리의 길이 정수 n이 매개변수로 주어졌을 때, 상자에 들어갈 수 있는 주사위의 최대 개수를 return 하도록 solution 함수를 완성해주세요. 제한사항 box의 길이는 3입니다. box[0] = 상자의 가로 길이 box[1] = 상자의 세로 길이 box[2] = 상자의 높이 길이 1 ≤ box의 원소 ≤ 100 1 ≤ n ≤ 50 n ≤ box의 원소 주사위는 상자와 평행하게 넣습니다. Solution.js function solution(box, n) { return box.reduce((acc, cur) =>..
(JS) [Programmers - 직각삼각형 출력하기] - 2023. 2.13.(월) 문제 "*"의 높이와 너비를 1이라고 했을 때, "*"을 이용해 직각 이등변 삼각형을 그리려고합니다. 정수 n 이 주어지면 높이와 너비가 n 인 직각 이등변 삼각형을 출력하도록 코드를 작성해보세요. 제한사항 1 ≤ n ≤ 10 Solution.js const fs = require('fs'); const N = parseInt(fs.readFileSync("/dev/stdin").toString()); for(let i = 1; i
(JS) [Programmers - n의 배수 고르기] - 2023. 2.13.(월) 문제 정수 n과 정수 배열 numlist가 매개변수로 주어질 때, numlist에서 n의 배수가 아닌 수들을 제거한 배열을 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ n ≤ 10,000 1 ≤ numlist의 크기 ≤ 100 1 ≤ numlist의 원소 ≤ 100,000 Solution.js function solution(n, numlist) { return numlist.filter((v) => v%n === 0); } 출처 : 프로그래머스 코딩테스트 연습, https://school.programmers.co.kr/learn/courses/30/lessons/120905