🌠 문제

my_string은 "3 + 5"처럼 λ¬Έμžμ—΄λ‘œ λœ μˆ˜μ‹μž…λ‹ˆλ‹€. λ¬Έμžμ—΄ my_string이 λ§€κ°œλ³€μˆ˜λ‘œ μ£Όμ–΄μ§ˆ λ•Œ, μˆ˜μ‹μ„ κ³„μ‚°ν•œ κ°’을 return ν•˜λŠ” solution ν•¨μˆ˜λ₯Ό μ™„μ„±ν•΄μ£Όμ„Έμš”.

🌠 μ œν•œμ‚¬ν•­

  • μ—°μ‚°μžλŠ” +, -만 μ‘΄μž¬ν•©λ‹ˆλ‹€.
  • λ¬Έμžμ—΄μ˜ μ‹œμž‘κ³Ό λμ—λŠ” 곡백이 μ—†μŠ΅λ‹ˆλ‹€.
  • 0으둜 μ‹œμž‘ν•˜λŠ” μˆ«μžλŠ” 주어지지 μ•ŠμŠ΅λ‹ˆλ‹€.
  • 잘λͺ»λœ μˆ˜μ‹μ€ 주어지지 μ•ŠμŠ΅λ‹ˆλ‹€.
  • 5 ≤ my_string의 길이 ≤ 100
  • my_string을 κ³„μ‚°ν•œ 결과값은 1 이상 100,000 μ΄ν•˜μž…λ‹ˆλ‹€.
  • my_string의 쀑간 계산 값은 -100,000 이상 100,000 μ΄ν•˜μž…λ‹ˆλ‹€.
  • 계산에 μ‚¬μš©ν•˜λŠ” μˆ«μžλŠ” 1 이상 20,000 μ΄ν•˜μΈ μžμ—°μˆ˜μž…λ‹ˆλ‹€.
  • my_stringμ—λŠ” μ—°μ‚°μžκ°€ 적어도 ν•˜λ‚˜ ν¬ν•¨λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.
  • return type 은 μ •μˆ˜ν˜•μž…λ‹ˆλ‹€.
  • my_string의 μˆ«μžμ™€ μ—°μ‚°μžλŠ” κ³΅λ°± ν•˜λ‚˜λ‘œ κ΅¬λΆ„λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.

🌠 μž…μΆœλ ₯ 예

my_string result
"3 + 4" 7

🌠 μž…μΆœλ ₯ 예 μ„€λͺ…

μž…μΆœλ ₯ 예 #1

  • 3 + 4 = 7을 return ν•©λ‹ˆλ‹€.

🧞 풀이

function solution(my_string) {
    let arr = my_string.split(" ");
    let buho = "+";
    let answer = 0;
    while (arr.length != 0) {
        let tmp = arr.shift();
        if (tmp == "+") {
            buho = "+"
        } else if (tmp =="-") {
            buho = "-"
        } else {
            let num = parseInt(tmp);
            if (buho == "+") {
                answer += num;
            } else {
                answer -= num;
            }
        }
    }
    return answer;
}

+ Recent posts