所摘内容来自于XJTU小学期ACM培训PPT
log 默认以2为底
计算机一秒可以看作1e8次
- 保证数据计算精度及数据所需必要大小
a=1LL*a*a%p//在计算时通过乘以1LL,临时将Int转化为LL,从而防止计算中间结果超出Int的问题发生。而这里p取的是一个10的九次方左右的数,这样就保证了运算结果在int可以表示的范围内,这样直接把结果赋值给int类型的a,编译器也不会认为有问题。
sqrt之后,返回的类型为double,精度是足够的,但是类型不符,需要显式转换为LL
MAX_INF=1e9+7,使用它的原因是因为这是一个很大的质数,而且刚好相加不会爆int,相乘不会爆long long
ACM模板: