728x90
문제
정수 배열 numLog가 매개변수로 주어진다.
"w", "s", "a", "d"로 이루어진 문자를 입력받고, 문자를 입력할 때 조건에 따라 결과 값을 numLog에 순서대로 입력된다.
• "w" : n이 1 커진다.
• "s" : n이 1 작아진다.
• "d" : n이 10 커진다.
• "a" : n이 10 작아진다.
주어진 정수 배열 numLog에 입력한 문자열을 반환하는 함수를 작성해라.
예시
numLog | 문자열 |
[0, 1, 0, 10, 0, 1, 0, 10, 0, -1, -2, -1] | wsdawsdassw |
728x90
나의 풀이
function solution(numLog) {
let arr = [];
for( let i = 0; i < numLog.length-1; i++ ) {
// 빼기 계산이 일어남
if( numLog[i] > numLog[i+1] ) {
numLog[i] - 1 === numLog[i+1]
? arr.push("s")
: arr.push("a")
} else {
numLog[i] + 1 === numLog[i+1]
? arr.push("w")
: arr.push("d")
}
}
return arr.join("");
}
다른 풀이
function solution(numLog) {
const convert = {
'1': 'w', '-1': 's', '10': 'd', '-10': 'a'
};
return numLog.slice(1).map((v, i) => {
return convert[v - numLog[i]]
}).join('')
}
728x90
'🖥️Frontend > Programmers' 카테고리의 다른 글
[JavaScript] 수열과 구간 쿼리 4 (0) | 2024.06.04 |
---|---|
[JavaScript] 수열과 구간 쿼리 2 (0) | 2024.06.03 |
[JavaScript] 수 조작하기 1 (0) | 2024.06.03 |
[JavaScript] 주사위 게임 (0) | 2024.06.03 |
[JavaScript] 홀짝에 따라 다른 수 반환하기 (0) | 2024.05.31 |
댓글