关注
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import java.util.regex.Pattern;
public class Main {
private static String pattern = "^-?[0-9]+";
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) {
int[] stack = new int[16];
int top = -1;
String[] datas = expr.split(" ");
for (int i = 0; i < datas.length; i++) {
if (Pattern.matches(pattern, datas[i])) {
if (top == 15) {
return -2;
}
top++;
stack[top] = Integer.parseInt(datas[i]);
} else {
switch (datas[i]) {
case "^":
if (top == -1) {
return -1;
}
stack[top]++;
break;
case "+":
if (top < 1) {
return -1;
}
int a = stack[top];
top--;
stack[top] += a;
break;
case "*":
if (top < 1) {
return -1;
}
int b = stack[top];
top--;
stack[top] *= b;
break;
}
}
}
if (top < 0) {
return -1;
}
return stack[top];
}
}
我这个AC了,字符串匹配的没AC,求大神代码
查看原帖
点赞 9
相关推荐
点赞 评论 收藏
分享
查看29道真题和解析 点赞 评论 收藏
分享
10-17 12:31
重庆交通大学 技术支持工程师 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 职场中那些令人叹为观止的八卦 #
9550次浏览 144人参与
# 你找工作想离家近 or 离家远? #
7343次浏览 149人参与
# 小红书开奖了 #
15499次浏览 94人参与
# 我的职场社死时刻 #
8191次浏览 92人参与
# 秋招吐槽大会 #
41213次浏览 383人参与
# 你父母给过你哪些不靠谱的职场建议? #
7331次浏览 134人参与
# 腾讯音乐秋招 #
422467次浏览 4738人参与
# 那些年,我收到的‘奇葩’回复 #
4728次浏览 49人参与
# 哪些公司开始补录了 #
7481次浏览 105人参与
# 你秋招最后悔的选择 #
7228次浏览 65人参与
# 如何拒绝/反向PUA #
82508次浏览 371人参与
# 秋招你经历过哪些无语的事 #
4786次浏览 57人参与
# XX请雇我工作 #
6194次浏览 67人参与
# 月薪多少能在一线城市生存 #
91959次浏览 670人参与
# 职场中对你有帮助的书 #
23136次浏览 213人参与
# 中科曙光工作体验 #
5092次浏览 23人参与
# 交通银行工作体验 #
20754次浏览 69人参与
# 假如你的老板掉河里,你的工作能为他做什么 #
39644次浏览 402人参与
# 你觉得机械有必要实习吗 #
66528次浏览 481人参与
# 虾皮开奖 #
50782次浏览 246人参与
# 京东工作体验 #
21806次浏览 121人参与
# 你最满意的offer薪资是哪家公司? #
52248次浏览 264人参与
