关注
import java.util.ArrayList;
import java.util.Scanner;
import java.util.Stack;
public class Main {
public static void main(String[] args){
ArrayList<Integer> inputs = new ArrayList<Integer>();
Scanner in = new Scanner(System.in);
String line = in.nextLine();
if(line!=null && !line.isEmpty()) {
int res = resolve(line.trim());
System.out.println(String.valueOf(res));
}
}
public static int resolve(String expr) {
String[] exprs = expr.split(" ");
Stack<Integer> stack = new Stack<>();
for(int i=0;i<exprs.length;i++){
String temp = exprs[i];
if(temp.equals("")){
continue;
}
if(!(temp.contains("*")||temp.contains("^")||temp.contains("+"))){
if(stack.size()==16){
return -2;
} else {
stack.push(Integer.valueOf(temp));
}
} else {
String posibleNumber="";
boolean isNum = false;
for(int j=0;j<temp.length();j++){
if(temp.codePointAt(j)>=48&&temp.codePointAt(j)<=57){
posibleNumber+=temp.charAt(j);
isNum=true;
} else {
if(isNum) {
if(stack.size()==16){
return -2;
} else {
stack.push(Integer.valueOf(posibleNumber));
posibleNumber="";
isNum=false;
j--;
}
} else {
if(temp.charAt(j) == '^'){
if(stack.size()==0){
return -1;
} else {
int tempNum = stack.pop()+1;
stack.push(tempNum);
}
} else if(temp.charAt(j) == '+') {
if(stack.size()<2){
return -1;
} else {
int tempA = stack.pop();
int tempB = stack.pop();
stack.push(tempA+tempB);
}
} else if(temp.charAt(j) == '*'){
if(stack.size()<2){
return -1;
} else {
int tempA = stack.pop();
int tempB = stack.pop();
stack.push(tempA*tempB);
}
}
}
}
}
if(isNum){
if(stack.size()==16){
return -2;
} else {
stack.push(Integer.valueOf(posibleNumber));
posibleNumber="";
isNum=false;
}
}
}
}
if(stack.size()>=1)
return stack.pop();
else
return -1;
}
}
通过100%
查看原帖
点赞 评论
相关推荐
11-15 14:35
南京邮电大学 Java 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 牛客2025仙途报告 #
17593次浏览 295人参与
# 实习没人带,苟住还是跑路? #
1094次浏览 36人参与
# 大家实习都在做什么? #
332次浏览 17人参与
# 我们是不是被“优绩主义”绑架了? #
3095次浏览 136人参与
# 一人说一家双休的公司 #
116次浏览 2人参与
# 元旦假期你打算怎么过 #
1605次浏览 51人参与
# 找工作,行业重要还是岗位重要? #
87992次浏览 1765人参与
# 参加过提前批的机械人,你们还参加秋招么 #
105237次浏览 1647人参与
# 多益网络工作体验 #
60000次浏览 298人参与
# 工作中的卑微时刻 #
29636次浏览 181人参与
# 今年你最想重开的一场面试是? #
15185次浏览 159人参与
# 华为工作体验 #
276874次浏览 1354人参与
# 华为池子有多大 #
154293次浏览 866人参与
# 你有哪些缓解焦虑的方法? #
44704次浏览 870人参与
# 没有家庭托举的我是怎么找工作的 #
32089次浏览 263人参与
# 实习要如何选择和准备? #
130628次浏览 1517人参与
# 礼物开箱Plog #
3628次浏览 108人参与
# 机械人晒出你的简历 #
148713次浏览 887人参与
# 秋招落幕,你是He or Be #
24143次浏览 405人参与
# 一人说一个提前实习的好处 #
26183次浏览 335人参与

