[D4] [S/W 문제해결 기본] 6일차 - 계산기2 - 1223
성능 요약
메모리: 20,824 KB, 시간: 131 ms, 코드길이: 1,186 Bytes
제출 일자
2023-11-15 10:09
출처: SW Expert Academy, https://swexpertacademy.com/main/code/problem/problemList.do
import java.util.Scanner;
import java.util.Stack;
class Solution {
public static void main(String args[]) throws Exception {
Scanner sc = new Scanner(System.in);
for(int tc = 1; tc <= 10; tc++) {
sc.nextInt();
Stack<Integer> nums = new Stack<>();
Stack<Character> op = new Stack<>();
String line = sc.next();
int result = 0;
for(char ch : line.toCharArray()){
if(ch == '+' || ch == '*'){
if(ch == '+' && !op.isEmpty() && op.peek() == '+'){
nums.push(nums.pop() + nums.pop());
}else{
op.push(ch);
}
}else{
int num = ch - '0';
if(!op.isEmpty() && op.peek() == '*'){
nums.push(nums.pop() * num);
op.pop();
}else{
nums.push(num);
}
}
}
result = nums.pop();
if(!op.isEmpty()){result += nums.pop();}
System.out.println("#" + tc + " " + result);
}
}
}
'알고리즘 - SWEA > D4' 카테고리의 다른 글
[SW expert Academy] SWEA 1226번 미로1 자바(Java) (1) | 2023.11.18 |
---|---|
[SW expert Academy] SWEA 3752번 가능한 시험 점수 자바(Java) (0) | 2023.11.16 |
[SW expert Academy] SWEA 1232번 사칙연산 자바(Java) (0) | 2023.11.16 |
[SW expert Academy] SWEA 1224번 계산기3 자바(Java) (0) | 2023.11.15 |
[SW expert Academy] SWEA 1222번 계산기1 자바(Java) (0) | 2023.11.15 |