- 博客(6)
- 收藏
- 关注
原创 数论学习笔记2——快速幂取模
数论学习笔记2——快速幂取模大佬肯定都是暴力循环乘出来的。咳咳,考虑指数n在二进制下第A1Aj下为1,那么显而易见~ mn= ∏i=1jm\prod_{i=1}^jm∏i=1jm(1<<Ai)由低位开始向前递推出每一位的m(1<<Ai)取模后的值,累乘取模。贴下代码:typedef long long ll;ll fastpow(ll x,ll y,ll mo...
2018-10-23 22:48:43
244
原创 我的C++模板
我的C++模板1.读入优化模板inline void read(int &amp;amp;x){ x=0;int f=1;char ch=getchar(); while(ch&amp;lt;'0'||ch&amp;gt;'9'){if(ch=='-')f=-1;ch=getchar();} while(ch&amp;gt;='0'&amp;amp;&amp;amp;ch&amp;lt;
2018-10-22 22:24:29
140
原创 数论学习笔记1——二进制算法求GCD
数论学习笔记1——二进制算法求GCD又是一篇水解。首先显然大家都知道如何用辗转相除法求最大公约数,其原理就是gcd(x,y)=gcd(x,y-x)既然大家都知道我在这里就不证明了贴下一行代码:inline ll gcd(ll x,ll y){ return !y?x:gcd1(y,x%y);}但强大的你怎能止步于此,定要优化一下,其实原理也很简单 就是不断地除2我们考虑当x=...
2018-10-22 22:08:51
554
原创 浅谈并查集初步
浅谈并查集初步蒟蒻入门的一些见解,不喜勿喷。并查集的基础作用很简单,也很重要,就是快速把集合取并。我们用递归实现的find函数来查找母集,在查找的过程中更新沿路的集合的母集(路径压缩),将待合并的集合都归入一个集合的母集即可实现集合的合并。贴下代码:#include &lt;bits/stdc++.h&gt;#define MAXN 10005using namespace std;...
2018-10-20 20:17:24
163
原创 利用费马小定理判断一个大整数是否为素数
利用费马小定理判断一个大整数是否为素数这是一篇关于一个显而易见的结论的文章,请理解的同学不要水我。大家应该都知道费马小定理是个啥:其中a为整数且p为质数,在此就不证明了,对此感兴趣的同学可以去找下度娘。到这里神犇的你显然理解了如何利用定理来判断素数了当我们判断一个整数n的时候,可以枚举a判断定理是否成立,只要对于任何一个a定理不成立,n显然就不是素数此法可以用来判断少量的较大的素数,...
2018-10-15 22:35:36
3470
转载 C++运算符优先级
本蒟蒻的第一篇水 博客——C++运算符优先级随口谈谈,大佬勿喷。赶时间的同学可以通俗地理解一下下面这句话选择符号>算数运算符>关系运算符>位运算符>赋值运算符牛逼的你应该已经理解了大部分关于运算符优先级的知识,但我还是假装有一些人不知道,扔张表给你们...
2018-10-13 22:16:20
485
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人