말랑한 하루
[SW Expert Academy] 1223 계산기 2 [Java] 본문
반응형
[ 핵심풀이 ]
후위표기식을 사용한다.
이 문제는 괄호가 존재하지않으므로 바로 계산하여도 무방하다.
1224 계산기 3문제에서는 후위표기식에 대해서 다루므로 알아두도록하자.
[ Java ]
import java.util.Scanner;
import java.util.Stack;
public class _1223_계산기2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
for (int t = 1; t <= 10; t++) {
int len = sc.nextInt();
String temp = sc.next();
Stack<Integer> s = new Stack<Integer>();
s.push(Integer.parseInt(temp.charAt(0)+""));
for (int i = 1; i < len-1; i += 2) {
if (temp.charAt(i) == '+')
s.push(Integer.parseInt(temp.charAt(i + 1)+""));
else
s.push(s.pop() * Integer.parseInt(temp.charAt(i + 1)+""));
}
int result = 0;
while (!s.isEmpty())
result += s.pop();
System.out.println("#" + t+" " + result);
}
}
}
반응형
'문제풀이 > SWexpert Academy' 카테고리의 다른 글
[SW Expert Academy] 1861 정사각형 방 [Java] (0) | 2021.02.07 |
---|---|
[SW Expert Academy] 1224 계산기 3 [Java] (0) | 2021.02.07 |
[SW Expert Academy] 7793 오! 나의 여신님 [Java] (0) | 2021.02.05 |
[SW Expert Academy] 1873 상호의 배틀필드 [Java] (0) | 2021.02.05 |
[SW Expert Academy] 1954 달팽이 숫자 [Java] (0) | 2021.02.02 |
Comments