728x90
반응형

1. 가위 바위 보
: 가위는 2, 바위는 0, 보는 0일때 가위 바위 보를 낸 순서가 담긴 문자열이 주어진다. 이를 이기는 경우를 순서대로 나타낸 문자열 return
- 내가 짠 코드
// 전
function solution(rsp) {
let rspArr = rsp.split("");
let answer = '';
for(let i=0; i<rspArr.length; i++) {
if(rspArr[i] === '2') {
answer += '0';
} else if(rspArr[i] === '0') {
answer += '5';
} else {
answer += '2'
}
}
return answer
}
// 후
function solution(rsp) {
let arr = Array.from(rsp)
return arr.map(el => el === '2' ? '0' : (el === "0" ? "5" : "2")).join("")
}
- solution
function solution(rsp) {
let arr = {
2: 0,
0: 5,
5: 2
};
var answer = [...rsp].map(v => arr[v]).join("");
return answer;
}
2. 세균증식
: 어떤 세균은 시간당 2배씩 증식. 초기 세균 수(n)와 경과 시간(t)이 매개변수로 주어질 때, t시간 후 세균 수 return
- 내가 짠 코드
function solution(n, t) {
return 2**t * n;
}
- solution
function solution(n, t) {
return n*Math.pow(2,t);
}
function solution(n, t) {
return n << t;
}
3. 문자열 정렬하기 (1)
: 문자열이 매개변수로 주어질 때, 숫자만 골라 오름차순으로 정렬한 배열 return
- 내가 짠 코드
// 전
function solution(my_string) {
let arr = my_string.split("");
let nums = arr.filter((el) => Number(el) || el === '0');
let answer = nums.map((el) => Number(el));
return answer.sort((a, b) => a - b )
}
// 후
function solution(my_string) {
let arr = Array.from(my_string);
let answer = arr.map(el => Number(el))
return answer.filter(el => !isNaN(el)).sort((a, b) => a-b)
}
- solution
function solution(my_string) {
return Array.from(my_string).filter(v => !isNaN(+v)).sort((a,b) => a - b).map(v => +v);
}
function solution(my_string) {
return my_string.match(/\d/g).sort((a, b) => a - b).map(n => Number(n));
}
4. n의 배수 고르기
: 정수(n)와 정수의 배열이 매개변수로 주어질 때, n의 배수만 있는 배열 return
- 내가 짠 코드
function solution(n, numlist) {
return numlist.filter((el) => el % n === 0);
}
5. 주사위의 개수
: 상자에 정육면체 모양의 주사위를 최대한 많이 채우려 한다. 주사위의 가로, 세로, 높이가 저장된 배열과 상자의 모서리 길이 n이 주어질 때, 채울 수 있는 주사위 개수 return
- 내가 짠 코드
function solution(box, n) {
return Math.floor(box[0]/n) * Math.floor(box[1]/n) * Math.floor(box[2]/n);
}
- solution
function solution(box, n) {
return box.reduce((acc,v) => acc * Math.floor(v / n), 1);
}
728x90
반응형
'자료구조 및 알고리즘 > JavaScript Practice' 카테고리의 다른 글
JS Practice) 프로그래머스로 공부하기 9 (0) | 2023.03.10 |
---|---|
JS Practice) 프로그래머스 : A로 B만들기 (0) | 2023.03.08 |
JS Practice) 프로그래머스로 공부하기 6 (0) | 2023.03.06 |
JS Practice) 프로그래머스로 공부하기 5 (0) | 2023.03.05 |
JS Practice) 프로그래머스 : 문자 반복 출력하기 / 중앙값 구하기 / 특정 문자 제거하기 / 짝수는 싫어요 / 순서쌍의 개수 (0) | 2023.03.04 |