关注
及其丑陋的代码,基本想法就是找连续的符号,把对应数字排序。有很多特殊情况要考虑。。。。 import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (in.hasNext()){
int n = in.nextInt();
int nums[] = new int[n];
char op[] = new char[n];
nums[0] = in.nextInt();
for (int i=1; i<n; i++){
op[i] = in.next().charAt(0);
nums[i] = in.nextInt();
}
for (int i=1; i<n;){
if (op[i] == '+') {
int j = i;
while (j<n&&op[j]=='+') j++;
if (j<n&&(op[j]=='*'||op[j]=='/')){
if (i==1){
Arrays.sort(nums,i-1,j-1);
}
else {
Arrays.sort(nums,i,j-1);
}
}
else {
if (i==1){
Arrays.sort(nums,i-1,j);
}
else {
Arrays.sort(nums,i,j);
}
}
i=j;
}
else if (op[i] == '-') {
int j = i;
while (j<n&&op[j]=='-') j++;
if (j<n&&(op[j]=='*'||op[j]=='/')){
Arrays.sort(nums,i,j-1);
}
else {
Arrays.sort(nums,i,j);
}
i=j;
}
else if (op[i] == '*'){
int j=i;
while (j<n&&op[j]=='*') j++;
if (op[i-1]=='/'){
Arrays.sort(nums, i, j);
}
else {
Arrays.sort(nums,i-1,j);
}
i=j;
}
else if (op[i] == '/'){
int j=i;
while (j<n&&op[j]=='/') j++;
Arrays.sort(nums,i,j);
i=j;
}
}
System.out.print(nums[0]);
for (int i=1; i<n; i++){
System.out.print(" "+op[i]+" "+nums[i]);
}
System.out.print("\n");
}
}
}
查看原帖
点赞 评论
相关推荐
2025-12-15 14:25
云南大学 Java 点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 在大厂上班是一种什么样的体验 #
5688次浏览 78人参与
# 机械人避雷的岗位/公司 #
41223次浏览 269人参与
# 程序员找工作至少要刷多少题? #
10547次浏览 168人参与
# 过年最难忘的一件事 #
22847次浏览 174人参与
# 论秋招对个人心气的改变 #
6398次浏览 108人参与
# 为了减少AI幻觉,你注入过哪些设定? #
2104次浏览 79人参与
# 牛客AI体验站 #
3804次浏览 113人参与
# 刚入职的你踩过哪些坑 #
4612次浏览 99人参与
# AI Coding的使用心得 #
2758次浏览 72人参与
# 找工作的破防时刻 #
252444次浏览 1959人参与
# 一张图晒一下你的AI员工 #
3228次浏览 73人参与
# 我现在比当时_,你想录用我吗 #
4255次浏览 72人参与
# 关于春招/暑期实习,你想知道哪些信息? #
4613次浏览 86人参与
# 程序员能干到多少岁? #
6121次浏览 93人参与
# 12306一秒售罄,你抢到回家的票了吗? #
690次浏览 21人参与
# 晒晒你司的新年福利 #
4484次浏览 75人参与
# 大家实习每天都在干啥 #
119092次浏览 627人参与
# 我的工作日记 #
172780次浏览 1680人参与
# 黄金这个事上,你学到了什么 #
996次浏览 29人参与
# 机械人你知道哪些单休企业 #
84938次浏览 427人参与
