在做大数的题的时候现敲模板,那么长,敲出来也不知道能敲出来多少个bug,而且java的大数也是无限长的,所以用java去写大数就很方便了,当然没有python方便,但我只会java,python以后学的话再说吧。
java的基本的包:
import java.io.*
import java.util.* 输入的Scanner在这个包里
import java.math.* BigInteger在这个包里
输入与输出:
Scanner cin = new Scanner(System.in) 输入
while(cin.hasNext()) 这个就是多组输入
n = cin.nextInt(); 输入一个int型
n = cin.nextBigInteger(); 输入一个大数
System.out.print(n); 输出n但不换行
System.out.println(); 换行
System.out.println(n); 输出n且换行
定义变量:
int a;
BigInteger a;
BigInteger b = new BigInteger("1") 定义一个大数b且赋值为1
BigDecimal; 大浮点数
定义数组:
int a[] = new int[10]
BigInteger b[] = new BigInteger[1000]
BigInteger的常用操作:
a = BigInteger.ONE; 给a赋值0
a = BigInteger.valueOf(1) 给a赋值1
a[i] = BigInteger.valueOf(10) 给a[i]赋值10
c = a.add(b); c=a+b
c = a.substract(b); c=a - b
c = a.multiply(b); c=a * b
c = a.divide(b); c=a / b
c = a.mod(b); c=a % b
c = a.remainder(b) c = a % b (BigDecimal的取余)
a.pow(b) a^b
a.equals(b) 比较a和b的大小,小于等于大于分别是-1,0,1
a.max(b) a.min(b) 取大的值和小的值