关注
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%
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
2024-12-25 23:11
门头沟学院 嵌入式工程师 KPLACE:首先是板面看起来不够,有很多奖,比我厉害。项目要精减,大概详细描述两到三个,要把技术栈写清楚,分点,什么算法,什么外设,怎么优化,不要写一大堆,分点,你写上去的目的,一是让别人知道你做了这个知识点,然后在面试官技术面的时侯,他知道你会这个,那么就会跟你深挖这个,然后就是个人评价改为专业技能
点赞 评论 收藏
分享
牛客608169678号:大佬厉害啊大佬厉害啊,陕西IP蹭一下牛气
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 我的2024牛客高光时刻 #
90497次浏览 1500人参与
# 你的简历改到第几版了 #
911451次浏览 11701人参与
# 被同事甩锅了怎么办 #
14988次浏览 89人参与
# 国企是春招机械人最好的去处吗 #
14304次浏览 81人参与
# 学信网能看师兄师姐就业去向了 #
197497次浏览 575人参与
# 签约/解约注意事项 #
535026次浏览 3649人参与
# 想实习转正,又想准备秋招,我该怎么办 #
561491次浏览 5569人参与
# 实习,投递多份简历没人回复怎么办 #
2695496次浏览 36608人参与
# 腾讯求职进展汇总 #
266404次浏览 2097人参与
# 数据人的面试交流地 #
495019次浏览 8288人参与
# 大家都开始春招面试了吗 #
495576次浏览 6631人参与
# 入职第一天,你准备什么时候下班 #
25106次浏览 170人参与
# 一人推荐一个值得去的通信/硬件公司 #
156193次浏览 1717人参与
# 入职第五天,你被拉进了几个工作群 #
7913次浏览 46人参与
# 数据人offer决赛圈怎么选 #
145476次浏览 1641人参与
# 如果你有一天可以担任公司的CEO,你会做哪三件事? #
18313次浏览 402人参与
# 大家实习每天都在干啥 #
49592次浏览 336人参与
# 求职季如何保持心态不崩 #
50014次浏览 454人参与
# 我的第一份实习怎么找的 #
48699次浏览 496人参与
# 那些拿到大厂offer的简历长啥样 #
181777次浏览 2862人参与