A - 素数筛
埃式筛法直接能够水过,注意一下从小开始枚举就行
1 |
|
B - 素数筛(403了….)
C - 素数筛
还是用埃式筛法筛选出来之后用一维前缀和记录这个区间内的答案然后结果就是ans[r]-ans[l-1]
1 |
|
D - 素数筛
埃式筛法朴素的寻找左右边界即可
1 |
|
E - 欧几里得算法
这里注意一个结论就是gcd(a,b)与gcd(a+tb,b)的互质性相同,也就是说如果a,b互质那么a+tb与b互质,所以我们可以用已经知道的小的k-th互质数推出大的1e9-th的互质数
1 |
|
F - 同余定理
快速幂取余板子,余数原理的应用(a+b+c)%d=a%d+b%d+c%d,(abc)%d=a%dxb%dxc%d
1 |
|
下面的题都是用了拓展欧几里得求一元线性同余方程的解所以我们需要先了解一下什么是拓展欧几里得算法
可以看我的另一篇博文拓展欧几里得算法求线性同余方程
G - 一元线性同余方程
计算线性同余方程最小的整数解,首先要找到a,b,c对应的位置,然后套用最小整数解的公式即可,中间的判断也是必不可少
1 |
|
H - 拓展欧几里得算法求逆元
跟上面一样甚至还比上面的简单,注意如果逆元是0那么输出为1
1 |
|