728x90
# 문제
가위는 2 바위는 0 보는 5로 표현합니다. 가위 바위 보를 내는 순서대로 나타낸 문자열 rsp가 매개변수로 주어질 때, rsp에 저장된 가위 바위 보를 모두 이기는 경우를 순서대로 나타낸 문자열을 return하도록 solution 함수를 완성해보세요.
# 답안
// 방법 1) for문 사용
function solution(rsp) {
let str = "";
for (let i = 0; i < rsp.length; i++) {
if (rsp[i] === "0") {
str += "5";
} else if (rsp[i] === "2") {
str += "0";
} else if (rsp[i] === "5") {
str += "2";
}
}
return str;
}
// 방법2) 방법1을 삼항연산자를 사용해서 줄이기
function solution(rsp) {
let str = "";
for (let i = 0; i < rsp.length; i++) {
str += rsp[i] === "0" ? "5" : rsp[i] === "2" ? "0" : rsp[i] === "5" ? "2" : "";
}
return str;
}
// 방법3) map 사용하기: split으로 쪼개고, 쪼갠거를 map돌려서 재구성하고, join으로 붙이기
function solution(rsp) {
return rsp.split("").map(d => {
if (d === "0") return "5";
if (d === "2") return "0";
if (d === "5") return "2";
}).join("");
}
// 방법4) 방법3을 삼항연산자를 사용해서 줄이기
function solution(rsp) {
return rsp.split("").map(d => d === "0" ? "5" : d === "2" ? "0" : d === "5" ? "2" : "").join("");
}
728x90
'Coding Test > Programmers' 카테고리의 다른 글
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 44 - 암호 해독) (3) | 2024.02.10 |
---|---|
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 43 - 대문자와 소문자) (0) | 2024.02.10 |
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 41 - n의 배수 고르기 ) (2) | 2024.02.09 |
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 40 - 숨어있는 숫자의 덧셈(1)) (0) | 2024.02.09 |
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 39 - 자릿수 더하기) (0) | 2024.02.07 |