JAVA大数模板

JAVA在ACM里因为速度慢很吃亏,但是一旦涉及到大数运算,它将碾压C++

以多校第十场H题 hdu 6433 为例,求2的n次方,一个大数的裸题,但队友不太会做大数,

我刚好又学了一点JAVA,所以只能我上了,结果交第一发CE,第二次才A好像有点傻逼啊?

package 实验;
import java.math.BigInteger;
import java.util.Scanner;
import java.util.*;
import java.io.*;
public class Main {
    public static void main(String [] args){
        Scanner cin = new Scanner(System.in);
        int T=cin.nextInt();
        while(T>0){
            int n=cin.nextInt();
            BigInteger a = BigInteger.valueOf(1); //大数赋值
            BigInteger b = BigInteger.valueOf(2);
            while(n>0){
                /*BigInteger a;
                BigInteger b;
                a=cin.nextBigInteger();//输入大数
                b=cin.nextBigInteger();*/
                a=a.multiply(b);
                n--;
            }
            System.out.println(a);//println会自动换行,不想换行时用print
            T--;
        }
    }
}

这份代码可以在JAVA里面编译,但交题的时候要把第一行注释掉才行哦

 

posted @ 2018-08-22 20:12  Venux  阅读(629)  评论(0编辑  收藏  举报