首先打ACM为啥要用java?用其他语言不是一样嘛,为啥学了一种语言还要懂其它语言的一些知识点??,这里只是针对打ACM提出的观点,像什么工作之类的,这里不提,那为啥要学Java??不学python??因为我们不确定python能不能被用作一种提交语言,所以我们这里稍微学习一点java。
在程序编写的过程中,就我自己而言我认为c/c++比java好写一点(可能是我经常用的原因),但是在遇到大数问题的时候,java简直就是流氓处理,所以我们这里深入一点的学习一下Java大数
首先最基础的输入输出我就不在废话,如果有需要可以看下以前的博客衔接,里面还有java的多组T组输入下面开始大数。
首先跟C/C++一样你使用某一个函数或者功能时要先写它的头文件,这里用Java的大数时也要先弄一个类(Java中叫类),这里我们叫它头文件吧,然后开始使用。
大整数最基础的操作:
首先导入包:
import java.math.BigInteger;
或者
import java.math.*;
然后定义变量:
import java.util.Scanner; import java.io.BufferedInputStream; import java.math.*; public class Main { public static void main(String[] agrs) { Scanner cin = new Scanner(new BufferedInputStream(System.in)); BigInteger a; a=cin.nextBigInteger(); System.out.println(a); } }
接下来是最基本的函数
加减乘除以及取模较大值较小值(注意这些函数使用对象均为同样的BigInteger数,所以如果我们只有整型数时还要改变数据类型