ํ‹ฐ์Šคํ† ๋ฆฌ ๋ทฐ

๋ฌธ์ œ

ํ›„์œ„์—ฐ์‚ฐ์‹์ด ์ฃผ์–ด์ง€๋ฉด ์—ฐ์‚ฐํ•œ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์„ธ์š”.
๋งŒ์•ฝ 3*(5+2)-9 ์„ ํ›„์œ„์—ฐ์‚ฐ์‹์œผ๋กœ ํ‘œํ˜„ํ•˜๋ฉด 352+*9- ๋กœ ํ‘œํ˜„๋˜๋ฉฐ ๊ทธ ๊ฒฐ๊ณผ๋Š” 12์ž…๋‹ˆ๋‹ค.

 

๋ฌธ์ œํ’€์ด

  • ์—ฐ์‚ฐ์‹์—์„œ ์ˆซ์ž๊ฐ€ ๋‚˜์˜จ๋‹ค๋ฉด ์Šคํƒ์— ๊ณ„์† ์ €์žฅ
  • ์ดํ›„ ์—ฐ์‚ฐ์ž๊ฐ€ ๋‚˜์˜จ๋‹ค๋ฉด ๊ฐ€์žฅ ์ตœ๊ทผ์— ์ €์žฅํ•œ ๊ฐ’๊ณผ ๊ทธ ์ด์ „์— ์ €์žฅํ•œ ๊ฐ’์„ ์ถ”์ถœ
  • ์ถ”์ถœํ•œ ๋‘ ์ˆซ์ž๋ฅผ ํ•ด๋‹น ์—ฐ์‚ฐ์ž๋ฅผ ํ†ตํ•ด ํ•˜๋‚˜์˜ ๊ฒฐ๊ณผ๊ฐ’์œผ๋กœ ๋„์ถœ
  • ๋„์ถœ๋œ ๊ฒฐ๊ณผ๊ฐ’์„ ์Šคํƒ์— ์ €์žฅ_์ดํ›„ ๋ฐ˜๋ณต

์ฝ”๋“œ

function solution(p) {
  let answer = 0;
  let stack = [];
  let regExp = /^[0-9]+$/;

  for (let x of p) {
    if (!regExp.test(x)) {
      let rt = stack.pop(); 
      let lt = stack.pop(); 
      switch (x) {
        case "+":
          stack.push(lt + rt);
          break;
        case "-":
          stack.push(lt - rt);
          break;
        case "*":
          stack.push(lt * rt);
          break;
        case "/":
          stack.push(lt / rt);
          break;
        default:
          break;
      }
    } else {
      stack.push(Number(x));
    }
  }

  answer = stack.join("");
  return answer;
}

let postfix = "352+*9-";
console.log(solution(postfix));

function solution(s){  
                let answer;
                let stack=[];
                for(let x of s){
                    if(!isNaN(x)) stack.push(Number(x));
                    else{
                        let rt=stack.pop();
                        let lt=stack.pop();
                        if(x==='+') stack.push(lt+rt);
                        else if(x==='-') stack.push(lt-rt);
                        else if(x==='*') stack.push(lt*rt);
                        else if(x==='/') stack.push(lt/rt);
                    }
                }
                answer=stack[0];
                return answer;
            }

            let str="352+*9-";
            console.log(solution(str));
๋Œ“๊ธ€
๊ณต์ง€์‚ฌํ•ญ
์ตœ๊ทผ์— ์˜ฌ๋ผ์˜จ ๊ธ€
์ตœ๊ทผ์— ๋‹ฌ๋ฆฐ ๋Œ“๊ธ€
Total
Today
Yesterday
๋งํฌ
TAG
more
ยซ   2024/10   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
๊ธ€ ๋ณด๊ด€ํ•จ