728x90
📌 문제
가위는 2 바위는 0 보는 5로 표현합니다. 가위 바위 보를 내는 순서대로 나타낸 문자열 rsp가 매개변수로 주어질 때, rsp에 저장된 가위 바위 보를 모두 이기는 경우를 순서대로 나타낸 문자열을 return하도록 solution 함수를 완성해보세요.
**제한사항**
0 < rsp의 길이 ≤ 100
rsp와 길이가 같은 문자열을 return 합니다.
rsp는 숫자 0, 2, 5로 이루어져 있습니다.
📌 풀이
주어진 문자열에서 2가 나오면 0을, 0이 나오면 5를, 5가 나오면 2를 출력하는 if문으로 문제를 풀었다.
if문이 아니라 다른 방법으로는 어떻게 푸나 다른 사람들의 풀이를 보던 중 파이선의 딕셔너리 같은, 오브젝트를 활용한 코드를 봤다.
아래와 같이 이길 값을 arr안의 밸류로 정해주고, 주어진 문자열을 어레이로 변경한 후 arr로 호출해 다시 문자열로 만들었다.
map 부분이 잘 이해가 안 가는데... 아무튼 객체를 사용해서 푼 게 신기해서 체크했다. 그에 비하면 삐약삐약거리는 내 코드... ^.ㅜ
function solution(rsp) {
let arr = {
2: 0,
0: 5,
5: 2
};
var answer = [...rsp].map(v => arr[v]).join("");
return answer;
}
📌 코드
function solution(rsp) {
let result = '';
for (let i = 0; i < rsp.length; i++) {
if (rsp[i] === '2') {
result += '0'
} else if (rsp[i] === '0') {
result += '5'
} else if (rsp[i] === '5') {
result += '2'
}
} return result;
}
728x90
'⚙️ 코딩테스트' 카테고리의 다른 글
[JavaScript] 프로그래머스 코딩테스트 입문 : 세균 증식 (0) | 2023.03.25 |
---|---|
[JavaScript] 프로그래머스 코딩테스트 입문 : 암호 해독 (0) | 2023.03.24 |
[JavaScript] 프로그래머스 코딩테스트 입문 : 대문자와 소문자 (0) | 2023.03.24 |
[JavaScript] 프로그래머스 코딩테스트 입문 : 개미군단 (0) | 2023.03.24 |
[JavaScript] 프로그래머스 코딩테스트 입문 : 문자열 안에 문자열 (0) | 2023.03.23 |