hdu1002 A + B Problem II[大数加法]

题目地址

hdu1002

题干

代码和解释

由题意这是一个涉及到大数的加法问题。去看了一眼大数加法的方法感觉头很大,然后突然发现Java可以流氓解决大数问题,毅然为之。

import java.util.Scanner;
import java.math.BigInteger;
public class Main{
    public static void main(String args[]){
        BigInteger a,b;
        int T;
        int n=1;
        Scanner in = new Scanner(System.in);
        T=in.nextInt();
        while(T>0){
            a=in.nextBigInteger();
            b=in.nextBigInteger();
            System.out.println("Case "+n+":");
            System.out.println(a+" + "+b+" = "+a.add(b));
            if(T!=1) System.out.println();
            T--;
            n++;
        }
    }
}

只要学一点Java的基本语法就可以解决这个问题。要注意输入需要import java.util.Scanner,以及大数需要import java.math.BigInteger。而且BigInterger相加不是"a+b",而是"a.add(b)"。
虽然有了Java这样的好工具,但本题还是PE了4次。输出格式要格外注意,我是从Discuss栏中看到别人的讨论才明白的。关键点是最后一组数据的结果输出后不要输出换行,而之前的每一组都要输出换行。

参考

hdu1002大数题
Java PE的解决

posted @ 2019-07-16 22:50  平静的雨田  阅读(245)  评论(1编辑  收藏  举报