trade war
题目描述
2018年的春天,特朗普这个不靠谱的的家伙悍然向中国发起了贸易战,贸易战是一场没有赢家的战争,美国向中国商品加征关税,自身会受到伤害,同时,中国也会提出反制措施。我就是想问一问,经过多轮贸易战之后,美国自身受到损失额是多少。
输入
第一行输入两个正整数m,n(1<=m<=100,100<=n<=200),m代表美国对中国100美元的商品加征关税,自身受到的损失额;n代表中国对美国100美元的商品增加关税,美国受到的损失额。
第二行开始,每行两个正整数a1,a2(1<=a1,a2<=1012),a1表示美国对中国加征关税的商品金额,a2表示中国对美国加征关税的商品金额。输入0表示结束。
输出
输出一个实数,表示美国经过多轮贸易战之后受到的损失额,保留2位小数。
样例输入
80 150 500 500 1000 1200 0
样例输出
3750.00

算法:
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
String sunshie = reader.nextLine();
String[] sunshieshuzu = sunshie.split(" ");
BigDecimal m = new BigDecimal(sunshieshuzu[0]);
BigDecimal n = new BigDecimal(sunshieshuzu[1]);
BigDecimal sum = new BigDecimal("0");
BigDecimal s1 ;
BigDecimal s2 ;
String jine = reader.nextLine();
String[] jineshuzu = jine.split(" ");
BigDecimal a = new BigDecimal(jineshuzu[0]);
while(a.intValue() != 0) {
BigDecimal b = new BigDecimal(jineshuzu[1]);
s1 = a.multiply(new BigDecimal("100")).divide(new BigDecimal("100")).multiply(m);
s2 = b.multiply(new BigDecimal("100")).divide(new BigDecimal("100")).multiply(n);
sum = sum.add(s1);
sum = sum.add(s2);
jine = reader.nextLine();
jineshuzu = jine.split(" ");
a = new BigDecimal(jineshuzu[0]);
}
DecimalFormat df = new DecimalFormat("0.00");
BigDecimal s = new BigDecimal("1.23");
s = sum.divide(new BigDecimal("100"));
String str = df.format(s);
System.out.println(str);
}
}

浙公网安备 33010602011771号