关注
import java.util.ArrayList;
import java.util.Stack;
import java.util.List;
import java.util.Scanner;
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));
}
}
// write your code here
public static int resolve(String expr) {
String[] array = expr.split("\\s+");
Stack stack = new Stack();
int count = 0;
for (int i = 0; i < array.length; i++){
if (array[i].equals("+")){
count--;
int temp1 = 0;
if (count >= 0){
temp1 = (int)stack.pop();
} else {
return -1;
}
count--;
int temp2 = 0;
if (count >= 0){
temp2 = (int)stack.pop();
}else {
return -1;
}
count++;
stack.push(temp1+temp2);
}else if (array[i].equals("*")){
count--;
int temp1 = 0;
if (count >= 0){
temp1 = (int)stack.pop();
} else {
return -1;
}
count--;
int temp2 = 0;
if (count >= 0){
temp2 = (int)stack.pop();
}else {
return -1;
}
count++;
stack.push(temp1*temp2);
}else if (array[i].equals("^")){
count--;
int temp = 0;
if (count >= 0){
temp = (int)stack.pop();
} else {
return -1;
}
temp += 1;
count++;
stack.push(temp);
}else {
int temp = Integer.parseInt(array[i]);
count++;
if (count > 16){
return -2;
}else {
stack.push(temp);
}
}
}
return (int)stack.pop();
}
}
我这样写ac了
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
正在热议
# 2025,我想...... #
9627次浏览 136人参与
# 今年形式下双非本找得到工作吗 #
68191次浏览 622人参与
# 夸一夸2024年的自己 #
10073次浏览 117人参与
# 我的简历长这样 #
2067909次浏览 28057人参与
# 职场高情商速成班 #
581次浏览 19人参与
# 投递实习岗位前的准备 #
1282628次浏览 19294人参与
# 秋招前后对offer的期望对比 #
194063次浏览 1457人参与
# 滴!实习打卡 #
528266次浏览 5843人参与
# 现在前端的就业环境真的很差吗 #
122676次浏览 1529人参与
# 签约有哪些注意事项 #
13648次浏览 158人参与
# 当你面对裁员会如何? #
62766次浏览 462人参与
# 如果再来一次,你还会选择这个工作吗? #
371619次浏览 2333人参与
# 简历被挂麻了,求建议 #
2765830次浏览 35102人参与
# 听劝,这个公司值得去吗 #
359575次浏览 1454人参与
# 工作中,你有没有遇到非常爱骂人的领导? #
8157次浏览 79人参与
# 无实习如何秋招上岸 #
850566次浏览 9572人参与
# 实习,投递多份简历没人回复怎么办 #
2641599次浏览 36195人参与
# 如果可以选,你最想去哪家公司 #
1333198次浏览 16649人参与
# 不给转正的实习,你还去吗 #
1646074次浏览 18133人参与
# 快手求职进展汇总 #
457493次浏览 5395人参与