[PAT] 1058 A+B in Hogwarts (20 分)Java

If you are a fan of Harry Potter, you would know the world of magic has its own currency system -- as Hagrid explained it to Harry, "Seventeen silver Sickles to a Galleon and twenty-nine Knuts to a Sickle, it's easy enough." Your job is to write a program to compute A+B where A and B are given in the standard form of Galleon.Sickle.Knut (Galleon is an integer in [0,107​​], Sickle is an integer in [0, 17), and Knut is an integer in [0, 29)).

Input Specification:

Each input file contains one test case which occupies a line with A and B in the standard form, separated by one space.

Output Specification:

For each test case you should output the sum of A and B in one line, with the same format as the input.

Sample Input:

3.2.1 10.16.27

Sample Output:

14.1.28

 1 package pattest;
 2 
 3 import java.io.BufferedReader;
 4 import java.io.IOException;
 5 import java.io.InputStreamReader;
 6 
 7 /**
 8  * @Auther: Xingzheng Wang
 9  * @Date: 2019/2/24 20:04
10  * @Description: pattest
11  * @Version: 1.0
12  */
13 public class PAT1058 {
14     public static void main(String[] args) throws IOException {
15         BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
16         String[] s = reader.readLine().split(" ");
17         reader.close();
18         String[] A = s[0].split("\.");
19         String[] B = s[1].split("\.");
20         int[] sum = new int[3];
21         for (int i = 0; i < A.length; i++) {
22             sum[i] = Integer.parseInt(A[i]) + Integer.parseInt(B[i]);
23         }
24         int num = sum[1] * 29 + sum[2];
25         System.out.printf("%d.%d.%d", sum[0] + num / (17 * 29), (num / 29) % 17, num % 29);
26     }
27 }
原文地址:https://www.cnblogs.com/PureJava/p/10498100.html