/
SWAcademy 1223
46 lines (43 loc) · 1.11 KB
/
SWAcademy 1223
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Stack;
public class Solution {
static Stack<Character> s = new Stack<>();
static Stack<Integer> ss = new Stack<>();
static int N;
static String back;
public static void main(String[] args) throws Exception{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
for (int t = 1; t <=10; t++) {
back="";
N = Integer.parseInt(br.readLine());
String str = br.readLine();
for (int i = 0; i < N; i++) {
if(str.charAt(i) >='0' && str.charAt(i) <= '9') {
back +=str.charAt(i);
}
else
if(str.charAt(i) == '*')
s.push(str.charAt(i));
else {
while(!s.isEmpty())
back += s.pop();
s.push(str.charAt(i));
}
}while(!s.isEmpty())
back += s.pop();
for (int i = 0; i < N; i++) {
if(back.charAt(i) >='0' && back.charAt(i) <= '9')
ss.push(back.charAt(i)-'0');
else
if(back.charAt(i)=='+') {
ss.push(ss.pop()+ss.pop());
}
else {
ss.push(ss.pop()*ss.pop());
}
}
System.out.println("#"+t+" "+ss.pop());
}
}
}