오늘의 목표
오늘 어려운점
"w" : n이 1 커집니다.
"s" : n이 1 작아집니다.
"d" : n이 10 커집니다.
"a" : n이 10 작아집니다.
위 규칙에 따라 n을 바꿨을 때 가장 마지막에 나오는 n의 값을 return 하는 solution 함수를 완성해 주세요.
``
이문제를 풀다 막혔다. 처음에는 if문으로 w,s,d,a에 알맞는 문자열이오면 값을 더하거나 빼주는
조건식으로 접근을 했는데 마지막에 들어오는 문자열만 계산된 값만 찍혀서 결과로 나왔다.
2번째 시도로 for문으로 for(const c of control)로 c에 각 문자를 할당해서 c를 순회시켜서
``
function solution(n, control) {
for(const c of control){
if(c === 'w'){
n++
}else if(c === 's'){
n--
}else if(c === 'd'){
n += 10
}else if(c === 'a'){
n -= 10
}
}
return n
}
``
비교하고 거기에 알맞는 값을 끄집어 내서 로직을 완성 시켰다.
다른 분들은 switch 문이나 reduce 함수를 사용 해서 푸신분도 있던데
나도 reduce함수는 아직 잘 모르겠지만 switch 문을 이용해서 로직을 줄여서 문제를 풀어보도록
해야겠다.
느낀점**