关注
写的挺工整的。但是有冗余部分,可以合并一下 import java.util.*; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); while (scan.hasNext()) { String s = scan.nextLine(); s = s.replace("[", "("); s = s.replace("{", "("); s = s.replace("]", ")"); s = s.replace("}", ")"); int res = solution(s); System.out.println(res); } } public static int solution(String s) { char ops = '+'; Stack<integer> stack = new Stack<>(); for (int i = 0; i < s.length(); i++) { char c = s.charAt(i); if (c == ' ') continue; if (c == '+' || c == '-' || c == '*' || c == '/') { ops = c; continue; } int num = 0; if (Character.isDigit(c)) { while (i < s.length() && Character.isDigit(s.charAt(i))) { num = num * 10 + s.charAt(i) - '0'; i++; } i--; } else if (c == '(') { int left = i; int right = i + 1; int count = 1; while (right < s.length() && count > 0) { if (s.charAt(right) == '(') count++; else if (s.charAt(right) == ')') count--; right++; } i = right - 1; num = solution(s.substring(left + 1, right - 1)); } if (ops == '+') stack.push(num); else if (ops == '-') stack.push(-num); else if (ops == '*') stack.push(stack.pop() * num); else if (ops == '/') stack.push(stack.pop() / num); } int res = 0; while (!stack.isEmpty()) res += stack.pop(); return res; } }</integer>
点赞
相关推荐
布布永不言弃:可曾见过“我在未上市小厂实习,丢人了xxx”,然后接着说“这个小厂的创始人是张一鸣” 然后别人要是真不认识张一鸣 就直接急了 点赞 评论 收藏
分享
04-17 09:20
河南科技大学 Java 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 你以为的实习VS真实的实习 #
166938次浏览 936人参与
# 妈妈治愈了你哪些脆皮时刻 #
52306次浏览 418人参与
# 我的实习日记 #
4204763次浏览 33439人参与
# 第一次找实习,我建议__ #
92763次浏览 941人参与
# 文远知行求职进展汇总 #
7569次浏览 43人参与
# OC/开奖 #
459847次浏览 2338人参与
# 机械笔面试考察这些知识点 #
24145次浏览 172人参与
# 从mentor身上学到了__ #
69673次浏览 958人参与
# 你觉得mentor喜欢什么样的实习生 #
66043次浏览 1100人参与
# 实习的内耗时刻 #
247710次浏览 1677人参与
# 面试线索爆料 #
139168次浏览 718人参与
# 硬件/芯片校招攻略 #
22662次浏览 309人参与
# 当你面对裁员会如何? #
423543次浏览 3099人参与
# 工作两年想退休了 #
287918次浏览 2093人参与
# 离家近房租贵VS离家远但房租低,怎么选 #
24088次浏览 154人参与
# 薪资一样,你会选择去大厂还是小公司 #
38808次浏览 141人参与
# 数字马力求职进展汇总 #
364615次浏览 2433人参与
# 参加过提前批的机械人,你们还参加秋招么 #
125110次浏览 1700人参与
# 研究所笔面经互助 #
132659次浏览 588人参与
# 牛客AI文生图 #
31736次浏览 319人参与
