题目描述
略
后缀表达式定义
后缀表达式的简要定义与计算
符号永远在数字后面,后面的运算符是对前面的数或前面数的结果与后面的数的运算
例如
32+5*4-
对等的四则表达式为:(3+2)*5-4。
思路
乍一看挺简单的,不就是加用最大的数加,减用最小的数减就出最大的和吗
代码实现
package Competion.the2019;
import java.util.Arrays;
import java.util.Scanner;
public class houzhuibiaodashi {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int N=scanner.nextInt();
int M=scanner.nextInt();
int[] num = new int[N+M+1];
for (int i=0;i<=M+N;i++){
num[i]=scanner.nextInt();
}
Arrays.sort(num);
int sum1=0;
for (int i=0;i<=M-1;i++){
sum1+=num[i];
}
int sum2=0;
for (int j=M;j<M+N+1;j++){
sum2+=num[j];
}
int res=sum2-sum1;
System.out.println(res);
}
}
另一个测试案例
3 2
1 2 3 4 5 6
结果为
15
注意事项
输入格式如果不熟可以多先编写几段简单的输入程序
这里的scanner.nextInt()是不断读取直到读取到下一个数字并返回它,回车换行均不影响